From 08c31d68fd2b85be5ca2fb6ec57ab2c7e49b5c0d Mon Sep 17 00:00:00 2001 From: javahongxi Date: Wed, 30 Oct 2019 09:58:13 +0800 Subject: [PATCH] whatsmars-storm --- README.md | 1 + pom.xml | 1 + whatsmars-storm/pom.xml | 74 + .../whatsmars/storm/LocalTopologyRunner.java | 43 + .../storm/topology/CommitFeedListener.java | 51 + .../storm/topology/EmailCounter.java | 47 + .../storm/topology/EmailExtractor.java | 23 + .../src/main/resources/changelog.txt | 1600 +++++++++++++++++ 8 files changed, 1840 insertions(+) create mode 100644 whatsmars-storm/pom.xml create mode 100644 whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/LocalTopologyRunner.java create mode 100644 whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/CommitFeedListener.java create mode 100644 whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailCounter.java create mode 100644 whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailExtractor.java create mode 100644 whatsmars-storm/src/main/resources/changelog.txt diff --git a/README.md b/README.md index 6490a7e1..c2e59f86 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ whatsmars-spring | Spring Framework whatsmars-spring-boot | Spring Boot 实战 whatsmars-spring-boot-samples | Spring Boot Samples whatsmars-spring-cloud | Spring Cloud 微服务生态 +whatsmars-storm | 分布式实时计算系统 whatsmars-zk | zookeeper remoting 封装 ### Rocket Stack diff --git a/pom.xml b/pom.xml index 3f724032..28a72b81 100644 --- a/pom.xml +++ b/pom.xml @@ -30,6 +30,7 @@ whatsmars-spring-boot-samples whatsmars-elasticsearch whatsmars-zk + whatsmars-storm diff --git a/whatsmars-storm/pom.xml b/whatsmars-storm/pom.xml new file mode 100644 index 00000000..a3837af4 --- /dev/null +++ b/whatsmars-storm/pom.xml @@ -0,0 +1,74 @@ + + + + whatsmars-parent + org.hongxi + Rocket.S7 + + 4.0.0 + + whatsmars-storm + + + + org.apache.storm + storm-core + 1.2.2 + + + + + commons-io + commons-io + 2.6 + + + com.codahale.metrics + metrics-core + 3.0.2 + + + + + + + maven-assembly-plugin + + + jar-with-dependencies + + + + stormapplied.githubcommits.LocalTopologyRunner + + + + + + make-assembly + package + + single + + + + + + org.apache.maven.plugins + maven-surefire-plugin + 2.18 + + + 60000 + + + + + + + + \ No newline at end of file diff --git a/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/LocalTopologyRunner.java b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/LocalTopologyRunner.java new file mode 100644 index 00000000..0de0804b --- /dev/null +++ b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/LocalTopologyRunner.java @@ -0,0 +1,43 @@ +package org.hongxi.whatsmars.storm; + +import org.apache.storm.Config; +import org.apache.storm.LocalCluster; +import org.apache.storm.generated.StormTopology; +import org.apache.storm.topology.TopologyBuilder; +import org.apache.storm.tuple.Fields; +import org.apache.storm.utils.Utils; +import org.hongxi.whatsmars.storm.topology.CommitFeedListener; +import org.hongxi.whatsmars.storm.topology.EmailCounter; +import org.hongxi.whatsmars.storm.topology.EmailExtractor; + +public class LocalTopologyRunner { + private static final int TEN_MINUTES = 600000; + + public static void main(String[] args) { + TopologyBuilder builder = new TopologyBuilder(); + + builder.setSpout("commit-feed-listener", new CommitFeedListener()); + + builder + .setBolt("email-extractor", new EmailExtractor()) + .shuffleGrouping("commit-feed-listener"); + + builder + .setBolt("email-counter", new EmailCounter()) + .fieldsGrouping("email-extractor", new Fields("email")); + + Config config = new Config(); + config.setDebug(true); + + StormTopology topology = builder.createTopology(); + + LocalCluster cluster = new LocalCluster(); + cluster.submitTopology("github-commit-count-topology", + config, + topology); + + Utils.sleep(TEN_MINUTES); + cluster.killTopology("github-commit-count-topology"); + cluster.shutdown(); + } +} diff --git a/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/CommitFeedListener.java b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/CommitFeedListener.java new file mode 100644 index 00000000..9006c3c8 --- /dev/null +++ b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/CommitFeedListener.java @@ -0,0 +1,51 @@ +package org.hongxi.whatsmars.storm.topology; + +import org.apache.storm.spout.SpoutOutputCollector; +import org.apache.storm.task.TopologyContext; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseRichSpout; +import org.apache.storm.tuple.Fields; +import org.apache.storm.tuple.Values; +import org.apache.commons.io.IOUtils; + +import java.io.IOException; +import java.nio.charset.Charset; +import java.util.List; +import java.util.Map; + +/** + * This spout simulates reading commits from a live stream by doing two things: + *

+ * 1) Reading a file containing commit data into a list of strings (one string per commit). + * 2) When nextTuple() is called, emit a tuple for each string in the list. + */ +public class CommitFeedListener extends BaseRichSpout { + private SpoutOutputCollector outputCollector; + private List commits; + + @Override + public void declareOutputFields(OutputFieldsDeclarer outputFieldsDeclarer) { + outputFieldsDeclarer.declare(new Fields("commit")); + } + + @Override + public void open(Map map, + TopologyContext context, + SpoutOutputCollector outputCollector) { + this.outputCollector = outputCollector; + + try { + commits = IOUtils.readLines(ClassLoader.getSystemResourceAsStream("changelog.txt"), + Charset.defaultCharset().name()); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + @Override + public void nextTuple() { + for (String commit : commits) { + outputCollector.emit(new Values(commit)); + } + } +} \ No newline at end of file diff --git a/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailCounter.java b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailCounter.java new file mode 100644 index 00000000..22a3539c --- /dev/null +++ b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailCounter.java @@ -0,0 +1,47 @@ +package org.hongxi.whatsmars.storm.topology; + +import org.apache.storm.task.TopologyContext; +import org.apache.storm.topology.BasicOutputCollector; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseBasicBolt; +import org.apache.storm.tuple.Tuple; + +import java.util.HashMap; +import java.util.Map; + +public class EmailCounter extends BaseBasicBolt { + private Map counts; + + @Override + public void declareOutputFields(OutputFieldsDeclarer declarer) { + // This bolt does not emit any values and therefore does not define any output fields. + } + + @Override + public void prepare(Map stormConf, + TopologyContext context) { + counts = new HashMap(); + } + + @Override + public void execute(Tuple tuple, + BasicOutputCollector outputCollector) { + String email = tuple.getStringByField("email"); + counts.put(email, countFor(email) + 1); + printCounts(); + } + + private Integer countFor(String email) { + Integer count = counts.get(email); + return count == null ? 0 : count; + } + + /** + * Print the counts to System.out so you can easily see what's happening. + */ + private void printCounts() { + for (String email : counts.keySet()) { + System.out.println(String.format("%s has count of %s", email, counts.get(email))); + } + } +} \ No newline at end of file diff --git a/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailExtractor.java b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailExtractor.java new file mode 100644 index 00000000..0592430f --- /dev/null +++ b/whatsmars-storm/src/main/java/org/hongxi/whatsmars/storm/topology/EmailExtractor.java @@ -0,0 +1,23 @@ +package org.hongxi.whatsmars.storm.topology; + +import org.apache.storm.topology.BasicOutputCollector; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseBasicBolt; +import org.apache.storm.tuple.Fields; +import org.apache.storm.tuple.Tuple; +import org.apache.storm.tuple.Values; + +public class EmailExtractor extends BaseBasicBolt { + @Override + public void declareOutputFields(OutputFieldsDeclarer declarer) { + declarer.declare(new Fields("email")); + } + + @Override + public void execute(Tuple tuple, + BasicOutputCollector outputCollector) { + String commit = tuple.getStringByField("commit"); + String[] parts = commit.split(" "); + outputCollector.emit(new Values(parts[1])); + } +} \ No newline at end of file diff --git a/whatsmars-storm/src/main/resources/changelog.txt b/whatsmars-storm/src/main/resources/changelog.txt new file mode 100644 index 00000000..aa82338c --- /dev/null +++ b/whatsmars-storm/src/main/resources/changelog.txt @@ -0,0 +1,1600 @@ +b20ea50 nathan@nathanmarz.com +064874b andy.feng@gmail.com +28e4f8e andy.feng@gmail.com +9a3e07f andy.feng@gmail.com +cbb9cd1 nathan@nathanmarz.com +0f663d2 derekd@yahoo-inc.com +0a4b984 nathan@nathanmarz.com +1915ca4 derekd@yahoo-inc.com +ef217eb nathan@nathanmarz.com +09635e8 nathan@nathanmarz.com +bd2b576 nathan@nathanmarz.com +d96f431 nathan@nathanmarz.com +b87b363 nathan@nathanmarz.com +d6e6ebb nathan@nathanmarz.com +12db76f nathan@nathanmarz.com +4d0c93d nathan@nathanmarz.com +e4a59d3 nathan@nathanmarz.com +966bb53 derekd@yahoo.com +98c98c7 andy.feng@gmail.com +6866319 andy.feng@gmail.com +ca14624 andy.feng@gmail.com +cb5eccb andy.feng@gmail.com +7c50c36 andy.feng@gmail.com +b7f04fe andy.feng@gmail.com +c4f2b1e andy.feng@gmail.com +687cc25 andy.feng@gmail.com +2718142 andy.feng@gmail.com +712d79d andy.feng@gmail.com +7c6a77e nathan@nathanmarz.com +dea4c8b nathan@nathanmarz.com +d12c335 nathan@nathanmarz.com +1761546 jackson@twitter.com +794ba73 andy.feng@gmail.com +86cff76 andy.feng@gmail.com +cbd9d1e andy.feng@gmail.com +89e8c66 andy.feng@gmail.com +43053a7 jackson@twitter.com +22c7a8d andy.feng@gmail.com +44f7ddb jasonjckn@gmail.com +66af2fa jackson@twitter.com +e0f3504 nathan@nathanmarz.com +6e96a1f andy.feng@gmail.com +1ac7b41 andy.feng@gmail.com +0d02b65 andy.feng@gmail.com +3babdb0 andy.feng@gmail.com +66aadc3 andy.feng@gmail.com +1c2ba11 afeng@gmail.com +ba72e88 andy.feng@gmail.com +fd61bb2 ankitoshniwal@gmail.com +e296095 andy.feng@gmail.com +b7cf747 andy.feng@gmail.com +9f22f7e andy.feng@gmail.com +9df128f nathan@nathanmarz.com +7d4d160 derekd@yahoo.com +a54068c andy.feng@gmail.com +f2ff91a nathan@nathanmarz.com +5542477 andy.feng@gmail.com +9bbc7ea andy.feng@gmail.com +b9c82ae andy.feng@gmail.com +b1489d2 andy.feng@gmail.com +b168177 nathan@nathanmarz.com +6d04c9b nathan@nathanmarz.com +5d64bb9 nathan@nathanmarz.com +0e74f00 nathan@nathanmarz.com +220f924 nathan@nathanmarz.com +cfbcafd andy.feng@gmail.com +1b8bd3a nathan@nathanmarz.com +da608a1 nathan@nathanmarz.com +2dcbc57 afeng@yahoo-inc.com +3a1ab99 afeng@yahoo-inc.com +eb63cce afeng@yahoo-inc.com +5dca350 afeng@yahoo-inc.com +78b9f99 nathan@nathanmarz.com +61eee4d nathan@nathanmarz.com +a97743b afeng@yahoo-inc.com +9238c28 afeng@yahoo-inc.com +08ee9c4 afeng@yahoo-inc.com +69f1d2a jackson@twitter.com +8e57a6c afeng@yahoo-inc.com +d69ef33 afeng@yahoo-inc.com +2b0cedd nathan@nathanmarz.com +c75dbf3 derekd@yahoo-inc.com +51ca0f1 afeng@yahoo-inc.com +67cb631 afeng@yahoo-inc.com +a6f409e nathan@nathanmarz.com +cfe7662 nathan@nathanmarz.com +c15b28f nathan@nathanmarz.com +930fcbf nathan@nathanmarz.com +1d58110 nathan@nathanmarz.com +d6b189f nathan@nathanmarz.com +11503f1 nathan@nathanmarz.com +e61bbf4 nathan@nathanmarz.com +4cdfc45 nathan@nathanmarz.com +b12a1b9 jackson@twitter.com +4a31a41 jackson@twitter.com +4bc5f51 jackson@twitter.com +92586a4 nathan@nathanmarz.com +c6cbcfc jackson@twitter.com +87828f7 nathan@nathanmarz.com +98d2446 nathan@nathanmarz.com +5053ce6 afeng@yahoo-inc.com +da29e4b afeng@yahoo-inc.com +4ba00f5 andy.feng@gmail.com +39be0bb nathan@nathanmarz.com +6e1afc2 xumingming64398966@gmail.com +158276a michael@eclipse.io +9c91db7 andy.feng@gmail.com +9956175 nathan@nathanmarz.com +61f08d6 nathan@nathanmarz.com +d6374fe nathan@nathanmarz.com +4b66980 afeng@yahoo-inc.com +7059efc nathan@nathanmarz.com +6a6dab8 afeng@yahoo-inc.com +9def404 afeng@yahoo-inc.com +da24804 nathan@nathanmarz.com +f6804ad nathan@nathanmarz.com +87d133f nathan@nathanmarz.com +28a9b02 nathan@nathanmarz.com +726be6c nathan@nathanmarz.com +6ee428d nathan@nathanmarz.com +3f8264e nathan@nathanmarz.com +5185746 nathan@nathanmarz.com +9d2356f afeng@yahoo-inc.com +1493285 afeng@yahoo-inc.com +8e69347 afeng@yahoo-inc.com +9fbf64a nathan@nathanmarz.com +6398179 nathan@nathanmarz.com +81f888e nathan@nathanmarz.com +af2c793 andy.feng@gmail.com +010ca82 derekd@yahoo-inc.com +2a78dc0 afeng@yahoo-inc.com +c8905d6 derekd@yahoo-inc.com +6cf6c5f derekd@yahoo-inc.com +aed3298 derekd@yahoo-inc.com +a8ecc98 derekd@yahoo-inc.com +aa88f98 derekd@yahoo-inc.com +2123a17 afeng@yahoo-inc.com +24106aa derekd@yahoo-inc.com +b1f08b4 nathan@nathanmarz.com +95761f6 andy.feng@gmail.com +d104640 andy.feng@gmail.com +8308863 afeng@yahoo-inc.com +50ebab0 afeng@yahoo-inc.com +7b7617f derekd@yahoo-inc.com +169bae4 derekd@yahoo-inc.com +010f3b9 afeng@yahoo-inc.com +a6bd925 afeng@yahoo-inc.com +a22cb5d afeng@yahoo-inc.com +f4f2cdd afeng@yahoo-inc.com +61827e7 derekd@yahoo-inc.com +7970fee derekd@yahoo-inc.com +98292be derekd@yahoo-inc.com +974bf24 derekd@yahoo-inc.com +c9f3183 derekd@yahoo-inc.com +ce92897 nathan@nathanmarz.com +2420876 afeng@yahoo-inc.com +2f81fe0 derekd@yahoo-inc.com +30bd164 afeng@yahoo-inc.com +1cfd8b5 afeng@yahoo-inc.com +c729f45 afeng@yahoo-inc.com +e6eea02 nathan@nathanmarz.com +c73703d nathan@nathanmarz.com +414af60 nathan@nathanmarz.com +aa118f6 nathan@nathanmarz.com +c876e71 nathan@nathanmarz.com +141aad4 nathan@nathanmarz.com +1e24e9f afeng@yahoo-inc.com +330b8bd derekd@yahoo.com +2847f41 afeng@yahoo-inc.com +c75b0c9 afeng@yahoo-inc.com +873f52d derekd@yahoo.com +43bd28b afeng@yahoo-inc.com +65848ef afeng@yahoo-inc.com +7def91d afeng@yahoo-inc.com +1e17e82 afeng@yahoo-inc.com +0267c00 nathan@nathanmarz.com +7b45736 nathan@nathanmarz.com +64c3b96 nathan@nathanmarz.com +bcd8688 nathan@nathanmarz.com +8cd0c06 evans@yahoo-inc.com +0d8f40d evans@yahoo-inc.com +76775ea evans@yahoo-inc.com +59217cd evans@yahoo-inc.com +cd81d91 derekd@yahoo.com +0806f1f afeng@yahoo-inc.com +e34feda derekd@yahoo.com +96c5131 afeng@yahoo-inc.com +f10b698 nathan@nathanmarz.com +905b8e7 nathan@nathanmarz.com +f4e7e37 nathan@nathanmarz.com +9ab6535 nathan@nathanmarz.com +c843ec2 lorcan@gmail.com +f94a7bf nathan@nathanmarz.com +de923c4 nathan@nathanmarz.com +83af2b8 nathan@nathanmarz.com +01c4147 afeng@yahoo-inc.com +ea0e7ff afeng@yahoo-inc.com +9837bc4 afeng@yahoo-inc.com +1c6cd9c nathan@nathanmarz.com +f2a4d3f nathan@nathanmarz.com +5ea2e6f afeng@yahoo-inc.com +06dcc2a afeng@yahoo-inc.com +e96bb21 evans@yahoo-inc.com +1d76894 evans@yahoo-inc.com +f5205f4 evans@yahoo-inc.com +befe50c aolson1@cerner.com +cbd217c jackson@twitter.com +2fdd706 nathan@nathanmarz.com +4859f0d nathan@nathanmarz.com +b1a1851 jackson@twitter.com +28193d6 engineer.dev@gmail.com +8935c38 nathan@nathanmarz.com +446037a nathan@nathanmarz.com +3e29f13 jackson@twitter.com +1ae5ce4 nathan@twitter.com +6bd21ae nathan@twitter.com +7b21391 jackson@twitter.com +28251f7 jackson@twitter.com +cf7cb81 jackson@twitter.com +af77ba5 jackson@twitter.com +695abab nathan@twitter.com +458b9f2 nathan@twitter.com +1b1c1fd nathan@twitter.com +35275c1 nathan@twitter.com +6f53b95 nathan@twitter.com +deadcbf nathan@twitter.com +30126c2 nathan@twitter.com +7c5ae9c nathan@twitter.com +19a6ffa nathan@twitter.com +9c3244e nathan@twitter.com +d5bb376 nathan.marz@gmail.com +ff77c62 herberteuler@yahoo.com.cn +cc5d7d2 nathan@twitter.com +b965f2f nathan@twitter.com +78f1812 nathan@twitter.com +9420e7e nathan@twitter.com +cce1c88 kxiao.tiger@gmail.com +5ddc087 nathan@twitter.com +0182cc3 nathan@twitter.com +2ec670b nathan@twitter.com +7f2b38a nathan@twitter.com +70242cd nathan@twitter.com +a0e52c7 nathan@twitter.com +f771774 jackson@twitter.com +81d4618 jackson@twitter.com +fd3d4c9 nathan@twitter.com +a39add8 nathan@twitter.com +1f1511e nathan@twitter.com +b467750 nathan@twitter.com +d44970a nathan@twitter.com +679f20b nathan@twitter.com +d354395 nathan@twitter.com +52f79ad nathan@twitter.com +33b25c0 jackson@twitter.com +29997fd nathan@twitter.com +55d5b8d liyu@opinionexcept.corp.yahoo.com +a8df52d nathan@twitter.com +cb5b413 nathan@twitter.com +7bfe363 nathan@twitter.com +27d203e nathan@twitter.com +671dc95 nathan@twitter.com +fd201eb nathan@twitter.com +9148cd5 nathan@twitter.com +cc0a2e3 nathan@twitter.com +f248d79 nathan@twitter.com +698e5f2 nathan@twitter.com +f28c17d nathan@twitter.com +5ac075e nathan@twitter.com +0ed2b6a nathan@twitter.com +bba7263 nathan@twitter.com +41c988f nathan@twitter.com +e2ad407 nathan@twitter.com +1f6237b nathan@twitter.com +e64ac0c nathan@twitter.com +e2f041e nathan@twitter.com +99153f9 jackson@twitter.com +47b6093 nathan@twitter.com +5b62dc5 jackson@twitter.com +d2066e1 jackson@twitter.com +a9fd4ab jackson@twitter.com +ba18283 nathan@twitter.com +e8dd388 nathan@twitter.com +3332a0d nathan.marz@gmail.com +7d06aaa nathan.marz@gmail.com +1188da3 nathan@twitter.com +05f0955 nathan.marz@gmail.com +27c01b4 sritchie@twitter.com +f51396b sritchie@twitter.com +371400c sritchie@twitter.com +3105e72 nathan.marz@gmail.com +4026463 nathan@twitter.com +dd78113 nathan@twitter.com +feed4b8 L.Ryan@Liuyu.local +7694401 gabe@nomic.com +fe3fa6c jackson@twitter.com +c177d09 jackson@twitter.com +0f59a40 jackson@twitter.com +079ebf8 jackson@twitter.com +f2b212e jackson@twitter.com +6bdd00e soa@twitter.com +4820117 soa@twitter.com +ffd8ac4 jackson@twitter.com +a993a14 jackson@twitter.com +eeca80d jackson@twitter.com +863669e jackson@twitter.com +2a41f21 nathan@twitter.com +a85d809 nathan@twitter.com +45911a3 nathan@twitter.com +c26b95c nathan.marz@gmail.com +7fcd47f me@frostman.ru +e544f03 nathan@twitter.com +67b3508 nathan@twitter.com +33eb6b0 nathan@twitter.com +4e6e668 nathan@twitter.com +e5ca8b8 nathan@twitter.com +5e35a64 nathan@twitter.com +06b5c24 nathan@twitter.com +43842a8 nathan@twitter.com +d1fc48c nathan@twitter.com +7207af5 nathan@twitter.com +69ada70 jackson@twitter.com +9e0a738 nathan@twitter.com +f1a4cf3 jackson@twitter.com +d32701f jackson@twitter.com +b375d5a jackson@twitter.com +a3885fd jackson@twitter.com +d210aec jackson@twitter.com +d4d8e9b jackson@twitter.com +a45098d jackson@twitter.com +4a01197 jackson@twitter.com +cf67a08 nathan@twitter.com +10e8639 nathan@twitter.com +1a9dca4 nathan@twitter.com +6b1796f nathan@twitter.com +97b5bfa nathan@twitter.com +5f535c5 nathan@twitter.com +3a8bfe7 nathan@twitter.com +6c7c3cc nathan@twitter.com +d53f3d5 nathan@twitter.com +e69bf55 nathan@twitter.com +0d1b51c nathan@twitter.com +5b0f832 xumingming64398966@gmail.com +7759a54 xumingming64398966@gmail.com +cccbb7f xumingming64398966@gmail.com +ecafdcd nathan@twitter.com +d527be5 nathan@twitter.com +e8d8864 nathan@twitter.com +9acacb7 nathan@twitter.com +f473629 nathan@twitter.com +bf17856 nathan@twitter.com +6a24cb0 nathan@twitter.com +c1a4c89 nathan@twitter.com +b06a116 nathan@twitter.com +eab38ea nathan@twitter.com +0449d31 soa@twitter.com +255122c nathan@twitter.com +54f662e nathan@twitter.com +406b85b nathan.marz@gmail.com +5528962 lazyshot@gmail.com +5599fd2 nathan@twitter.com +810e676 nathan@twitter.com +4870bd9 nathan@twitter.com +bd963bc nathan@twitter.com +e78a9a7 nathan@twitter.com +513177c nathan@twitter.com +c2865d1 nathan@twitter.com +ea4f101 Lazyshot@gmail.com +20d6ad5 nathan@twitter.com +a0657f7 nathan@twitter.com +68bf9a6 nathan@twitter.com +9b32620 nathan@twitter.com +063c6ac nathan@twitter.com +0562d43 nathan@twitter.com +a62807c nathan@twitter.com +97091a9 nathan@twitter.com +c1dba19 nathan@twitter.com +6cf1734 nathan@twitter.com +2f2e54d t.junichiro@gmail.com +6fac795 nathan@twitter.com +9930eea nathan@twitter.com +6f1d888 me@frostman.ru +bf6dc80 nathan.marz@gmail.com +535b5fd nathan@twitter.com +64c9ae4 nathan@twitter.com +d8ba460 nathan@twitter.com +1c0e199 gabe@nomic.com +ef2a114 gabe@nomic.com +0c559cd nathan@twitter.com +201fe37 nathan@twitter.com +1003690 nathan@twitter.com +1428913 nathan@twitter.com +d6c2736 nathan@twitter.com +3a146c6 nathan@twitter.com +8ccb15a nathan@twitter.com +692b573 nathan@twitter.com +efe4231 nathan@twitter.com +9c85b3f nathan.marz@gmail.com +b454891 me@frostman.ru +e7a3bee me@frostman.ru +b27a54f me@frostman.ru +1b38b82 me@frostman.ru +c1a3a52 me@frostman.ru +54e527e nathan@twitter.com +ae5d493 nathan@twitter.com +b4ad6a8 nathan@twitter.com +710f109 nathan@twitter.com +cae9642 nathan@twitter.com +8c14723 nathan@twitter.com +719f359 nathan@twitter.com +665490f jackson@twitter.com +f129bbc jackson@twitter.com +13b9d4a nathan@twitter.com +4f0da19 nathan@twitter.com +5a5f181 nathan@twitter.com +d72ad23 nathan@twitter.com +c6cec6b nathan@twitter.com +faf33a7 nathan@twitter.com +aa47e72 nathan@twitter.com +dbcbf72 nathan@twitter.com +32ce061 nathan@twitter.com +60dc001 nathan@twitter.com +95b2f89 me@frostman.ru +274391a me@frostman.ru +b870d19 jackson@twitter.com +c562abc jackson@twitter.com +be4542f jackson@twitter.com +8f468e5 jackson@twitter.com +e02d88c jackson@twitter.com +33c9494 jackson@twitter.com +99fe5d7 jackson@twitter.com +86544cd nathan.marz@gmail.com +cada14b me@frostman.ru +8213366 rfeinstein@gmail.com +5303ca9 rfeinstein@gmail.com +890c974 nathan@twitter.com +d92ab83 nathan@twitter.com +137b908 nathan@twitter.com +af3d749 nathan@twitter.com +04a1077 nathan@twitter.com +54fc737 nathan@twitter.com +415731f nathan@twitter.com +b650cf2 nathan@twitter.com +8e66e2e nathan@twitter.com +2576c9c nathan@twitter.com +9fa1f0b me@frostman.ru +b9cd44e me@frostman.ru +4c1efb9 nathan@twitter.com +a57a5a0 nathan@twitter.com +bbaa48d nathan@twitter.com +01c6bfd nathan.marz@gmail.com +bec91fd jackson@twitter.com +3d7e68d nathan@twitter.com +daf930d nathan@twitter.com +5fccaef jackson@twitter.com +96b9abc jackson@twitter.com +a3650ef nathan@twitter.com +9a3e1ec nathan@twitter.com +dbe98d4 nathan@twitter.com +9ef86e0 nathan@twitter.com +1b73084 nathan@twitter.com +2d7affe nathan@twitter.com +4710bfe nathan@twitter.com +5785ef2 nathan@twitter.com +c053c94 nathan@twitter.com +7d6bd89 nathan.marz@gmail.com +3690995 nathan@twitter.com +288c72e nathan@twitter.com +2b868fe nathan@twitter.com +f0488b1 me@frostman.ru +bcd775b nathan@twitter.com +19d3f14 jackson@twitter.com +1fb5806 jackson@twitter.com +1228857 jackson@twitter.com +eebbc6a jackson@twitter.com +46db7ca jackson@twitter.com +f0bf30c jackson@twitter.com +7b334c7 jackson@twitter.com +fc9bc41 jason@cvk.ca +24ae774 nathan@twitter.com +ed29521 nathan@twitter.com +04bf652 nathan@twitter.com +b741f92 nathan@twitter.com +f8909bd nathan@twitter.com +8926d2e nathan@twitter.com +4f8ba6c nathan@twitter.com +16f5276 bhart@bhart-desktop2.(none) +89ac8ed nathan@twitter.com +ecd26e5 nathan@twitter.com +bab56fd nathan@twitter.com +872164c nathan@twitter.com +f72de00 nathan@twitter.com +3389753 nathan@twitter.com +a40f85c nathan@twitter.com +849b76d nathan@twitter.com +204fbff nathan@twitter.com +fdee6c9 nathan@twitter.com +93a3f37 okapies@gmail.com +92506f6 nathan.marz@gmail.com +8e10be1 teh_minghan@hotmail.com +8642d6a nathan@twitter.com +db58ba2 nathan@twitter.com +491e174 nathan@twitter.com +f3b407a nathan@twitter.com +3113a40 nathan@twitter.com +ac77ae1 jason@cvk.ca +97e807d jason@cvk.ca +7e1438f jason@cvk.ca +9b0cff8 jason@cvk.ca +7b2c09e nathan@twitter.com +0929e11 nathan@twitter.com +b901169 nathan@twitter.com +b6fa72e nathan@twitter.com +634a35f jason@cvk.ca +d4f6114 jason@cvk.ca +205722d jason@cvk.ca +a55a21f nathan@twitter.com +cd6cd99 nathan@twitter.com +035bcc8 nathan@twitter.com +9ef8b85 nathan.marz@gmail.com +fc141fd dane.molotok@gmail.com +93178da nathan@twitter.com +c7b965a nathan@twitter.com +2075e57 xumingming64398966@gmail.com +fcc3956 nathan@twitter.com +add5809 nathan@twitter.com +1c08506 nathan@twitter.com +75655b6 nathan@twitter.com +5cb7c33 jason@cvk.ca +7f73c14 jason@cvk.ca +a4af188 nathan@twitter.com +2c17b41 nathan@twitter.com +f66ad09 nathan@twitter.com +a04991c jason@cvk.ca +d01ed2c jason@cvk.ca +febbe25 jason@cvk.ca +5535d10 jason@cvk.ca +09f86bd nathan@twitter.com +5f85de2 nathan@twitter.com +1bdbe34 nathan@twitter.com +45780e5 nathan@twitter.com +5b10d3c nathan@twitter.com +5b3bec2 jason@cvk.ca +019aaba nathan@twitter.com +62ee763 nathan@twitter.com +b5bff69 nathan@twitter.com +b1360fd nathan@twitter.com +54cf35c nathan@twitter.com +1b8bec1 nathan@twitter.com +1abc7f7 nathan@twitter.com +f750522 nathan@twitter.com +78ff4a5 jason@cvk.ca +2b8f5a5 jason@cvk.ca +e37117d jason@cvk.ca +505b799 jason@cvk.ca +ae84356 nathan@twitter.com +b54c162 nathan.marz@gmail.com +15ab0e6 nathan@twitter.com +6f601e3 nathan@twitter.com +8ce3b60 nathan.marz@gmail.com +b234116 jason@cvk.ca +d3e50e7 sjoerd@frontendless.nl +ed619d5 nathan@twitter.com +8f2bbdc nathan@twitter.com +9b2fa63 nathan@twitter.com +522464a nathan.marz@gmail.com +d7231a1 sjoerd@frontendless.nl +f6b56d2 nathan@twitter.com +4aae95b sjoerd@frontendless.nl +0d35d43 xumingming64398966@gmail.com +9953963 xumingming64398966@gmail.com +7507db9 xumingming64398966@gmail.com +7a5733c xumingming64398966@gmail.com +4d942cd xumingming64398966@gmail.com +88c5c32 xumingming64398966@gmail.com +7b086e5 sjoerd@frontendless.nl +59116c6 sjoerd@frontendless.nl +cb6cec9 sjoerd@frontendless.nl +b647f8f nathan@twitter.com +195fb76 nathan@twitter.com +2a5dadd sjoerdmulder@gmail.com +999eff5 nathan@twitter.com +f94065d nathan@twitter.com +5994318 ddutta@gmail.com +e264a25 nathan@twitter.com +28d4c9e nathan@twitter.com +85f668b nathan@twitter.com +5693cdb nathan@twitter.com +dc6e525 nathan@twitter.com +36b9fea nathan@twitter.com +34ae39f nathan@twitter.com +b2755f4 nathan@twitter.com +c95063a nathan@twitter.com +51fbc79 nathan@twitter.com +1ff1af8 nathan@twitter.com +ae41243 nathan@twitter.com +56839f6 nathan@twitter.com +d15d5a2 nathan@twitter.com +6d9c961 nathan@twitter.com +27b615e nathan@twitter.com +277f6e9 nathan@twitter.com +58ce226 nathan@twitter.com +d47da10 nathan@twitter.com +37313e4 nathan@twitter.com +ae862e8 nathan@twitter.com +0b2e3d0 nathan@twitter.com +bc2baeb nathan@twitter.com +6eea86b nathan@twitter.com +5f5b973 nathan@twitter.com +3a907b9 nathan@twitter.com +6cbfecd nathan@twitter.com +d4bdd5c nathan@twitter.com +84f9bca nathan@twitter.com +57fb6ce nathan@twitter.com +a44a08e nathan@twitter.com +77fc60c nathan@twitter.com +d19e818 nathan@twitter.com +360f11f nathan@twitter.com +96d46f4 nathan@twitter.com +eaed247 nathan@twitter.com +9f1bf36 nathan@twitter.com +a10f8bb nathan@twitter.com +0c4cb5e xumingming64398966@gmail.com +835f480 xumingming64398966@gmail.com +3b0fb6f nathan@twitter.com +9bb2e2c nathan@twitter.com +655d006 nathan.marz@gmail.com +fbdc993 vinod.chandru@gmail.com +1dfd56e vinod.chandru@gmail.com +8d2eaba nathan@twitter.com +f3b9ecf nathan@twitter.com +d1dd9b9 nathan@twitter.com +68fcc21 nathan@twitter.com +f552a6e nathan@twitter.com +0bac455 xumingming64398966@gmail.com +4b9ebff xumingming64398966@gmail.com +a8a9247 xumingming64398966@gmail.com +02539af xumingming64398966@gmail.com +dfd4315 xumingming64398966@gmail.com +6a1e025 xumingming64398966@gmail.com +cf593f8 xumingming64398966@gmail.com +ee5968b xumingming64398966@gmail.com +017601b xumingming64398966@gmail.com +b8aa3f9 xumingming64398966@gmail.com +3cc3cd4 xumingming64398966@gmail.com +a37a9dd nathan@twitter.com +260841b nathan@twitter.com +4debef1 nathan@twitter.com +0036e90 nathan@twitter.com +a2923f3 nathan@twitter.com +04d8881 nathan@twitter.com +28fb07b nathan@twitter.com +c74fbdd nathan@twitter.com +7bb4f21 nathan@twitter.com +24f6f9d nathan@twitter.com +1f666b5 nathan@twitter.com +18491a6 nathan@twitter.com +fbcbd93 nathan@twitter.com +4514be2 nathan@twitter.com +dbf4aa5 nathan@twitter.com +edf6d2a nathan@twitter.com +1c4ff01 nathan@twitter.com +1e4853e nathan@twitter.com +a1630fc nathan@twitter.com +80b1711 nathan@twitter.com +ce6dab3 nathan@twitter.com +03b3ce4 nathan@twitter.com +86904a6 nathan@twitter.com +0dcfade martin@rapportive.com +955a0b0 nathan@twitter.com +6de5bc5 nathan@twitter.com +941f419 nathan@twitter.com +739167d nathan@twitter.com +991a46a nathan@twitter.com +eaf2755 nathan@twitter.com +4fb4e0e nathan@twitter.com +dfb9ad3 vancoppenolle@ferret-go.com +8c834aa nathan@twitter.com +f71c585 martin@rapportive.com +110cbb3 martin@rapportive.com +04a3476 nathan@twitter.com +b15ea5e nathan@twitter.com +8750ea7 nathan@twitter.com +770a03a nathan@twitter.com +2495a13 nathan@twitter.com +bfcfc1a nathan@twitter.com +39f41e6 nathan@twitter.com +850572c nathan@twitter.com +5be1787 nathan@twitter.com +c4a711a nathan@twitter.com +3368d34 ev@ooyala.com +ff9b528 martin@rapportive.com +b160035 nathan@twitter.com +33a2ea5 nathan@twitter.com +036ce18 nathan@twitter.com +5879814 nathan@twitter.com +eaab851 nathan@twitter.com +f7c89ae nathan@twitter.com +93c5184 nathan@twitter.com +c201c9d ev@ooyala.com +654b40f ev@ooyala.com +7d067a3 ev@ooyala.com +e633fb9 ev@ooyala.com +08224b2 martin@rapportive.com +0749adb martin@rapportive.com +8c7919a nathan@twitter.com +479167d nathan@twitter.com +8a2e06f nathan@twitter.com +12fde14 nathan@twitter.com +5df7182 nathan@twitter.com +0d86392 nathan@twitter.com +ac3f9eb nathan@twitter.com +41d0e33 nathan@twitter.com +f2a7046 nathan@twitter.com +1e35566 xumingming64398966@gmail.com +3dc29e0 xumingming64398966@gmail.com +d84ac47 xumingming64398966@gmail.com +365eaeb nathan@twitter.com +6e8a30b nathan@twitter.com +5ba4162 nathan@twitter.com +6586156 nathan@twitter.com +57a78cb nathan@twitter.com +436ae85 nathan@twitter.com +2a793d4 ev@ooyala.com +46fb59f ev@ooyala.com +5a615e7 nathan@twitter.com +bf2904b nathan@twitter.com +0deabfb nathan@twitter.com +7929a13 nathan@twitter.com +86a787d nathan@twitter.com +ea2e088 nathan@twitter.com +fbe2047 nathan@twitter.com +ebe8246 xumingming64398966@gmail.com +2708e40 nathan@twitter.com +dc8d388 nathan@twitter.com +f92310d nathan@twitter.com +64a4b32 nathan@twitter.com +d4c83c3 nathan@twitter.com +2acecc5 nathan@twitter.com +9336699 nathan@twitter.com +109093d nathan@twitter.com +7efff3c xumingming64398966@gmail.com +33e3cfc xumingming64398966@gmail.com +2575d71 xumingming64398966@gmail.com +1e70817 nathan@twitter.com +2e236e4 nathan@twitter.com +cc646c3 nathan@twitter.com +2240ad3 nathan@twitter.com +0d8a195 nathan@twitter.com +fce5783 nathan@twitter.com +488734a nathan@twitter.com +678adb6 nathan@twitter.com +d64c8e5 nathan@twitter.com +182572b nathan@twitter.com +acbcb8d nathan@twitter.com +1bc4665 xumingming64398966@gmail.com +597562e martin@rapportive.com +b6b117f xumingming64398966@gmail.com +ad60cb5 xumingming64398966@gmail.com +6022d24 xumingming64398966@gmail.com +c7cf138 xumingming64398966@gmail.com +4f374b8 xumingming64398966@gmail.com +debb8da nathan@twitter.com +601d54a xumingming64398966@gmail.com +2892dd8 nathan@twitter.com +348d7f3 nathan@twitter.com +9c14f8f nathan@twitter.com +4b38429 nathan@twitter.com +68672ce nathan@twitter.com +3dfa3e7 nathan@twitter.com +43ac194 nathan@twitter.com +33986e4 nathan@twitter.com +b55d760 nathan@twitter.com +e116bf5 nathan@twitter.com +5d05305 nathan@twitter.com +f320c78 nathan@twitter.com +f77ec59 nathan@twitter.com +2fe536b nathan@twitter.com +55a5f55 nathan@twitter.com +dadb794 nathan@twitter.com +a10b1aa nathan@twitter.com +0715702 nathan@twitter.com +5575c66 nathan@twitter.com +3574701 nathan@twitter.com +4b43647 nathan@twitter.com +af17378 nathan@twitter.com +dfd7397 nathan@twitter.com +f2d8f2f nathan@twitter.com +6535caf nathan@twitter.com +653fdc8 nathan@twitter.com +51ea800 nathan@twitter.com +b1e41b9 nathan@twitter.com +1dc034d nathan@twitter.com +76a883e nathan@twitter.com +78900aa nathan@twitter.com +2508f49 nathan@twitter.com +2952e1d nathan@twitter.com +cc46f4c nathan@twitter.com +ef05945 nathan.marz@gmail.com +cfc87d2 xumingming64398966@gmail.com +28a0a27 nathan@twitter.com +55c7b57 nathan@twitter.com +0fef2b1 nathan@twitter.com +6695b85 nathan@twitter.com +094eed8 nathan@twitter.com +2c17285 nathan@twitter.com +3673f6c nathan@twitter.com +8db1634 nathan@twitter.com +4011a6d nathan@twitter.com +1818542 nathan@twitter.com +b72cc81 nathan@twitter.com +a9b3daa nathan@twitter.com +f183a0c nathan@twitter.com +f4d59e6 nathan@twitter.com +d12a917 nathan@twitter.com +6568642 nathan@twitter.com +f1a5e08 nathan@twitter.com +57e5577 nathan@twitter.com +8d10d50 nathan@twitter.com +f96e10a nathan@twitter.com +925d7dc nathan@twitter.com +af4432b nathan@twitter.com +32295dd nathan@twitter.com +9692690 nathan@twitter.com +2b6418c nathan@twitter.com +0de685a nathan@twitter.com +0411f79 nathan@twitter.com +11862aa nathan@twitter.com +e882800 nathan@twitter.com +05c49ee nathan@twitter.com +4824212 nathan@twitter.com +fd358a8 nathan@twitter.com +a8ae92d nathan@twitter.com +a60a0f2 nathan@twitter.com +f3700ec nathan@twitter.com +3018242 nathan@twitter.com +5674f46 nathan@twitter.com +4392e98 nathan@twitter.com +7bbdb6a nathan@twitter.com +ce726ea nathan@twitter.com +871a4d3 nathan@twitter.com +f45921c nathan@twitter.com +793ba26 nathan@twitter.com +858df1e nathan@twitter.com +7458f06 nathan@twitter.com +8475a74 xumingming64398966@gmail.com +688af7c nathan@twitter.com +eba80e3 nathan@twitter.com +b1567c1 nathan@twitter.com +11e70de nathan@twitter.com +36494f5 nathan@twitter.com +53524f0 nathan@twitter.com +1dd96ec nathan@twitter.com +e1db1f1 nathan@twitter.com +b16c477 nathan@twitter.com +295816d nathan@twitter.com +269dbd1 nathan@twitter.com +520d864 nathan@twitter.com +b98b673 nathan@twitter.com +21c9b69 nathan@twitter.com +4bcb86d nathan@twitter.com +792bcaa nathan@twitter.com +e3a1401 nathan@twitter.com +7520648 xumingming64398966@gmail.com +407d631 nathan@twitter.com +8c3918b ashley@spider.io +cf036d7 nathan@twitter.com +fa0f5dd xumingming64398966@gmail.com +1faa92e xumingming64398966@gmail.com +a2859cb nathan@twitter.com +dba0286 nathan@twitter.com +7db6aa8 nathan@twitter.com +748ecd1 nathan@twitter.com +345cdc2 nathan@twitter.com +8c011bf nathan@twitter.com +633575c nathan@twitter.com +dabd1a9 nathan@twitter.com +58aeabf nathan@twitter.com +6f99d47 nathan@twitter.com +939c77a nathan@twitter.com +b74d323 nathan@twitter.com +2f66e58 nathan@twitter.com +161bf2a nathan@twitter.com +2cf102d nathan@twitter.com +b568f93 nathan@twitter.com +2d196c6 nathan@twitter.com +c36bd0d nathan@twitter.com +468ed6a nathan@twitter.com +9aa2d64 nathan@twitter.com +dc511b6 nathan@twitter.com +cbf995e nathan@twitter.com +edbddf2 nathan@twitter.com +aa91046 nathan@twitter.com +19c79c1 nathan@twitter.com +bba2e7f nathan@twitter.com +4b1ccd9 nathan@twitter.com +066cd0a nathan@twitter.com +5b37123 nathan@twitter.com +80201d1 nathan@twitter.com +14a842d nathan@twitter.com +ca93795 nathan@twitter.com +b18321b nathan@twitter.com +43426c7 nathan@twitter.com +10cbd8f nathan@twitter.com +aca15ef nathan@twitter.com +3c10652 nathan@twitter.com +9771cf6 nathan@twitter.com +5bb217d nathan@twitter.com +31bd4d7 nathan@twitter.com +cc8c75d nathan@twitter.com +0c7cf73 nathan@twitter.com +695f977 nathan@twitter.com +eee2304 nathan@twitter.com +03dae59 nathan@twitter.com +a82d020 nathan@twitter.com +6b5e563 nathan@twitter.com +1df18c3 nathan@twitter.com +6828999 nathan@twitter.com +96ae4a8 nathan@twitter.com +73866f6 xumingming64398966@gmail.com +adf6484 nathan@twitter.com +aa124eb nathan@twitter.com +796a9fc nathan@twitter.com +d1f42d2 nathan@twitter.com +d035c1e nathan@twitter.com +c4a57f3 nathan@twitter.com +f118dbd nathan@twitter.com +e253bc9 nathan@twitter.com +9282e47 nathan@twitter.com +3e048a1 nathan@twitter.com +45d0640 nathan@twitter.com +21f82a3 nathan@twitter.com +8d651da nathan@twitter.com +03bd955 nathan@twitter.com +3d0692a nathan@twitter.com +45e52f3 nathan@twitter.com +896c0ea nathan@twitter.com +8f1a4be xumingming64398966@gmail.com +875d679 nathan@twitter.com +22ca072 nathan@twitter.com +3b2917d nathan@twitter.com +9bfb89e nathan@twitter.com +e01055f nathan@twitter.com +a399c94 nathan@twitter.com +6176071 xumingming64398966@gmail.com +0f5740f xumingming64398966@gmail.com +a3ed583 xumingming64398966@gmail.com +e2d4833 xumingming64398966@gmail.com +c8eea0a xumingming64398966@gmail.com +aaa34e4 nathan@twitter.com +9db6453 nathan@twitter.com +882e5f0 nathan@twitter.com +b72c469 nathan@twitter.com +37f31ec nathan@twitter.com +2d9732e nathan@twitter.com +d99f13d nathan@twitter.com +a942da6 nathan@twitter.com +acc5183 nathan@twitter.com +a527240 nathan@twitter.com +d30ad35 nathan@twitter.com +ca4c0db nathan@twitter.com +efd8ad7 nathan@twitter.com +b7d7962 nathan@twitter.com +3a2e9b1 xumingming64398966@gmail.com +5d40181 nathan@twitter.com +eb25766 nathan@twitter.com +55ceb6d nathan@twitter.com +4a5b87a xumingming64398966@gmail.com +7918fad nathan@twitter.com +c278586 nathan@twitter.com +ce2c992 nathan@twitter.com +f84d181 nathan@twitter.com +df18ab0 nathan@twitter.com +aaaa759 nathan@twitter.com +e9efb39 nathan@twitter.com +9d33777 xumingming64398966@gmail.com +b0ddc4d xumingming64398966@gmail.com +c72758b nathan@twitter.com +badd59b nathan@twitter.com +49cd5cd nathan@twitter.com +35c70ed nathan@twitter.com +0ed4a60 nathan@twitter.com +a2556b6 fn@sturzbach.de +35333e4 nathan@twitter.com +a31de9f nathan@twitter.com +9a98615 nathan@twitter.com +a6cf888 nathan@twitter.com +469cd6b thomasjack@gmail.com +ec812fa nathan@twitter.com +a75d378 nathan@twitter.com +1837662 soren@dopeness.org +e88aa5b nathan@twitter.com +3e99760 nathan@twitter.com +6d32c6c nathan@twitter.com +26c73c1 nathan@twitter.com +a6af7ef nathan@twitter.com +668da62 nathan@twitter.com +acf4ef4 nathan@twitter.com +4baf72e nathan@twitter.com +644aaea nathan@twitter.com +3fee3e4 xumingming64398966@gmail.com +6584476 xumingming64398966@yahoo.com.cn +b21fd14 nathan@twitter.com +9066481 nathan@twitter.com +8581cce xumingming64398966@gmail.com +62db063 nathan@twitter.com +9030d84 nathan@twitter.com +c6058e6 xumingming64398966@yahoo.com.cn +49c8393 nathan@twitter.com +ab26d7a nathan@twitter.com +d74ae43 nathan@twitter.com +d5376e5 nathan@twitter.com +7139e17 nathan@twitter.com +804aab1 nathan@twitter.com +daf54a7 nathan@twitter.com +df45a8d nathan@twitter.com +a2512e9 nathan@twitter.com +77e2951 xumingming64398966@gmail.com +4052d16 xumingming64398966@gmail.com +2c7626c nathan@twitter.com +2a882a9 nathan@twitter.com +0f474f9 nathan@twitter.com +aad9669 nathan@twitter.com +62a6e60 nathan@twitter.com +da21734 nathan@twitter.com +e988ed4 nathan@twitter.com +be97d09 nathan@twitter.com +ce554e8 nathan@twitter.com +fa17af8 nathan@twitter.com +0e0497c nathan@twitter.com +21a6f85 nathan@twitter.com +c6f9629 nathan@twitter.com +96f8815 nathan@twitter.com +b7699f0 nathan@twitter.com +3f3ce81 nathan@twitter.com +e712c45 nathan@twitter.com +d22737a nathan@twitter.com +cf5fc87 soren@dopeness.org +d3269be soren@dopeness.org +f4884a7 nathan@twitter.com +7bbfa37 nathan@twitter.com +c1b8943 nathan@twitter.com +7577517 nathan@twitter.com +e4f477e nathan@twitter.com +b2b7f2a nathan@twitter.com +40e092d nathan@twitter.com +6fbc06d nathan@twitter.com +110d451 nathan@twitter.com +e797049 nathan@twitter.com +a71b302 thomasjack@gmail.com +b76c41b thomasjack@gmail.com +39fd9f0 thomasjack@gmail.com +1ebe0b2 nathan@twitter.com +7ae40de nathan@twitter.com +b699f0c nathan@twitter.com +6e73f34 nathan@twitter.com +6cff057 nathan@twitter.com +4f63ad5 nathan@twitter.com +438a858 nathan@twitter.com +195ddaf nathan@twitter.com +5ab6711 nathan@twitter.com +156560d nathan@twitter.com +635b483 nathan@twitter.com +1b12455 nathan@twitter.com +ba71589 nathan@twitter.com +b4b4b16 nathan@twitter.com +a3431a9 thomasjack@gmail.com +541c59d nathan@twitter.com +f7e789d nathan@twitter.com +0730a6e nathan@twitter.com +0aa8fc5 nathan@twitter.com +55847da nathan@twitter.com +4a7335d nathan@twitter.com +1b2ecb1 nathan@twitter.com +fc05f1e nathan@twitter.com +e7b00ef nathan@twitter.com +3343cc8 nathan@twitter.com +b26070c nathan@twitter.com +71e7e21 nathan@twitter.com +71f7c5b nathan@twitter.com +5107e10 nathan@twitter.com +d5cc24f kaspergsm@gmail.com +adef0a8 nathan@twitter.com +c1d93da nathan@twitter.com +33c9cfd nathan@twitter.com +66275c1 mail2samus@gmail.com +ff4a148 mail2samus@gmail.com +7a9ff26 nathan@twitter.com +43a8df1 nathan@twitter.com +554c49e thomasjack@gmail.com +d5f16d5 thomasjack@gmail.com +8d8194d thomasjack@gmail.com +fdbcf7f thomasjack@gmail.com +2de2a8e nathan@twitter.com +1b4939c nathan@twitter.com +d8675c2 nathan@twitter.com +da337be kaspergsm@gmail.com +766a299 nathan@twitter.com +d8ffcc2 nathan@twitter.com +c54ec0e nathan@twitter.com +d0bfbe1 nathan@twitter.com +06a3fa9 nathan@twitter.com +14a6f1a nathan@twitter.com +89d3084 nathan@twitter.com +9d1f9de nathan@twitter.com +3c461b1 nathan@twitter.com +e273f99 nathan@twitter.com +eccd827 nathan@twitter.com +2f148af nathan@twitter.com +8283fba nathan@twitter.com +a8d3d44 nathan@twitter.com +59f1f4f nathan@twitter.com +155ea6d nathan@twitter.com +d4d271e nathan@twitter.com +3586082 nathan.marz@gmail.com +93e731d nathan@twitter.com +02cda16 nathan@twitter.com +61cc199 nathan@twitter.com +c0a8e69 nathan@twitter.com +7401175 nathan@twitter.com +3559027 nathan@twitter.com +8cf2357 nathan@twitter.com +4762dd3 nathan@twitter.com +d20a7a3 nathan@twitter.com +39ec53e nathan@twitter.com +439dd82 nathan@twitter.com +9b3af14 nathan@twitter.com +1b4e89b nathan@twitter.com +8bf19c2 nathan@twitter.com +3557c29 nathan@twitter.com +a4ca346 nathan@twitter.com +d1bc264 travis@archive.org +2a0cb9e kxiao.tiger@gmail.com +b5b3a62 nathan@twitter.com +4e52e3d nathan@twitter.com +29beadd nathan@twitter.com +180975e nathan@twitter.com +896a483 nathan@twitter.com +4d4703c nathan@twitter.com +39e3079 nathan@twitter.com +17afe92 nathan@twitter.com +62b5817 nathan@twitter.com +b487a47 nathan@twitter.com +b3ff3ad nathan@twitter.com +8ea7937 nathan@twitter.com +9359ebb g@briel.ca +cc21a6b nathan@twitter.com +ac1d374 nathan@twitter.com +9d6761e nathan@twitter.com +b10ebde nathan@twitter.com +93791b3 nathan@twitter.com +c851f39 nathan@twitter.com +d8eca4c nathan@twitter.com +94b9f4e nathan@twitter.com +205c11a nathan@twitter.com +bf84f22 nathan@twitter.com +0357d95 yao.erix@gmail.com +a3be3ca yao.erix@gmail.com +3428bd7 yao.erix@gmail.com +e2d2ade yao.erix@gmail.com +1f736b2 nathan@twitter.com +3651b49 nathan@twitter.com +2775dd5 nathan@twitter.com +8c9de21 nathan@twitter.com +3a5e40f nathan@twitter.com +b56a813 nathan@twitter.com +3df25ab nathan@twitter.com +693571f nathan@twitter.com +ae4f11c nathan@twitter.com +353f3a0 nathan@twitter.com +cef7bee nathan@twitter.com +2e81a43 nathan@twitter.com +2e2f6d3 nathan@twitter.com +9c72b40 nathan@twitter.com +506c8ad yao.erix@gmail.com +2510ba9 nathan@twitter.com +980d0ca nathan@twitter.com +7582faa nathan@twitter.com +70bc597 nathan@twitter.com +4959adf nathan@twitter.com +559195b nathan@twitter.com +16765f6 nathan@twitter.com +943561f nathan.marz@gmail.com +8d3e385 yao.erix@gmail.com +df6a418 nathan@twitter.com +643bfcc nathan@twitter.com +369a5cc nathan@twitter.com +3244f19 nathan@twitter.com +b34a753 nathan@twitter.com +37d004a nathan@twitter.com +b88a8fd nathan@twitter.com +5d245da nathan@twitter.com +7013666 nathan@twitter.com +bcbc1c8 nathan.marz@gmail.com +b3c3239 nathan@twitter.com +45a62dd nathan@twitter.com +fa8a26f nathan@twitter.com +526dcc0 ben@pixelmachine.org +d4e3d3d nathan@twitter.com +c6712a1 yao.erix@gmail.com +87fc764 nathan@twitter.com +1cfd17e nathan@twitter.com +39728a6 nathan@twitter.com +2ba30d2 nathan@twitter.com +e70fa8c nathan@twitter.com +eeb7f55 nathan@twitter.com +b9f2cbf kachayev@gmail.com +8e34af7 dan@state.it +06d716c dan@state.it +2a731bc nathan@twitter.com +bfb22f9 nathan@twitter.com +69bad92 nathan@twitter.com +9c3a4b7 nathan@twitter.com +6bcd3bb nathan@twitter.com +a18a51f nathan@twitter.com +8795c6f nathan@twitter.com +3f911f6 nathan@twitter.com +b1d1f9e nathan@twitter.com +297ee5a nathan@twitter.com +634706f nathan@twitter.com +941ef63 nathan@twitter.com +b904e96 nathan@twitter.com +ba5477f nathan@twitter.com +e223f93 nathan@twitter.com +facc876 nathan@twitter.com +b8b4f22 nathan@twitter.com +80c7973 nathan@twitter.com +e129980 nathan@twitter.com +ea8b4b9 nathan@twitter.com +51d59ec nathan@twitter.com +7989c58 nathan@twitter.com +d56be3f nathan@twitter.com +20a2980 nathan@twitter.com +27d1b8a nathan@twitter.com +e5789d4 nathan@twitter.com +afe8ee8 nathan@twitter.com +743645e nathan@twitter.com +fc63b2d nathan@twitter.com +238f1c9 nathan@twitter.com +a5a7c8c nathan@twitter.com +e159c3a nathan@twitter.com +66c1dfd nathan@twitter.com +33272f3 nathan.marz@gmail.com +66810d6 nathan@twitter.com +26cc00a nathan@twitter.com +ff2e570 nathan@twitter.com +2e1b640 nathan@twitter.com +93029ad nathan@twitter.com +306a8b9 nathan@twitter.com +b8bafcd nathan@twitter.com +fe87c3e nathan@twitter.com +5cdfc04 nathan@twitter.com +17863eb nathan@twitter.com +c9720b6 nathan@twitter.com +9437183 nathan@twitter.com +f5254d0 nathan@twitter.com +ae28a9b nathan@twitter.com +ed50802 nathan@twitter.com +b13f9fe nathan@twitter.com +b88933b nathan@twitter.com +8890121 nathan@twitter.com +1a3f6d4 nathan@twitter.com +16b6777 nathan@twitter.com +670bc7a nathan@twitter.com +9cab7bd nathan@twitter.com +b993ec7 nathan@twitter.com +22e4879 nathan@twitter.com +a0d3dca nathan@twitter.com +a306adb nathan@twitter.com +752b4be nathan@twitter.com +df4692c sritchie09@gmail.com +21ddd27 nathan@twitter.com +9a37558 nathan@twitter.com +de4027f nathan@twitter.com +0ee45b1 nathan@twitter.com +18bd950 nathan@twitter.com +2d72b94 nathan@twitter.com +51359f3 nathan@twitter.com +bf034aa nathan@twitter.com +a4f7194 nathan@twitter.com +09372b1 ddillinger@navisite.com +502902c ddillinger@navisite.com +74a7947 nathan@twitter.com +faa5d74 nathan@twitter.com +db6b1c5 nathan@twitter.com +a79a879 nathan@twitter.com +c6add15 nathan@twitter.com +3159347 nathan@twitter.com +aff550f nathan@twitter.com +1bdfd9d nathan@twitter.com +55880e2 nathan@twitter.com +d0eac20 nathan@twitter.com +8a64e43 ben@pixelmachine.org +0036677 ben@pixelmachine.org +75f1d1a ben@pixelmachine.org +4925294 ben@pixelmachine.org +c28b350 ben@pixelmachine.org +806de3c nathan@twitter.com +3e53314 nathan@twitter.com +19cb297 nathan@twitter.com +7dcc258 nathan@twitter.com +c4eadcf nathan@twitter.com +f034816 nathan@twitter.com +e3af1b1 nathan@twitter.com +c5c3752 nathan@twitter.com +6061314 nathan@twitter.com +e7003a7 nathan@twitter.com +f16fa2b nathan@twitter.com +0b5135f nathan@twitter.com +baae324 nathan@twitter.com +5124069 nathan@twitter.com +4c5632d nathan@twitter.com +a62fcce nathan@twitter.com +2529452 nathan@twitter.com +58eb7bd nathan@twitter.com +d29cf6a nathan@twitter.com +5771c1c ben@pixelmachine.org +139026a ben@pixelmachine.org +51fab9e nathan@twitter.com +46f860b nathan@twitter.com +0876c31 nathan@twitter.com +64a686b nathan@twitter.com +ff3364a nathan@twitter.com +79f7921 nathan@twitter.com +3038ff0 nathan@twitter.com +9576260 nathan@twitter.com +de3de42 killme2008@gmail.com +0ae5b15 nathan@twitter.com +f099259 nathan@twitter.com +9dacabe nathan@twitter.com +53ce477 nathan@twitter.com +f226695 nathan.marz@gmail.com +20e1ef9 nathan@twitter.com +d3f28a6 nathan@twitter.com +619f2fd nathan@twitter.com +d809dd6 nathan@twitter.com +38bae17 nathan@twitter.com +ee769e8 nathan@twitter.com +3840655 nathan@twitter.com +ca38742 nathan@twitter.com +a6dc3ad nathan@twitter.com +95e0624 nathan@twitter.com +06a8c4a nathan@twitter.com +7028d12 ben@pixelmachine.org +ff82ec3 ben@pixelmachine.org +1028249 nathan@twitter.com +a7da0cc ben@pixelmachine.org +b37dfdb ben@pixelmachine.org +878293f nathan@twitter.com +26cf709 nathan@twitter.com +1600c31 nathan@twitter.com +c67f357 nathan@twitter.com +030304c nathan@twitter.com +225255a nathan@twitter.com +e1ccf0c nathan@twitter.com +bbe4aee ben@pixelmachine.org +4cc3ce5 nathan@twitter.com +86b4572 nathan@twitter.com +ff423ae nathan@twitter.com +47a8b19 ben@pixelmachine.org +8279bff nathan@twitter.com +d9df90f ben@pixelmachine.org +9a6881b nathan@twitter.com +a5e14a2 nathan@twitter.com +02dabc5 nathan@twitter.com +5046c24 trevorsummerssmith@gmail.com +a3094ef nathan@twitter.com +130c34e nathan@twitter.com +a6fcc6e nathan@twitter.com +8833764 nathan@twitter.com +83e2eec nathan@twitter.com +317710d nathan@twitter.com +f7fa84a nathan@twitter.com +7cce193 nathan@twitter.com +0eb696b nathan@twitter.com +df33534 killme2008@gmail.com +6041cd9 killme2008@gmail.com +0644b39 nathan@twitter.com +fc5ae41 nathan@twitter.com +896ec13 nathan@twitter.com +eb42451 nathan@twitter.com +eadd187 nathan@twitter.com +d0e6831 nathan@twitter.com +998b792 nathan@twitter.com +abeecaf sritchie09@gmail.com +f410aab nathan@twitter.com +1989897 nathan@twitter.com +e455ceb nathan@twitter.com +e1eb16b nathan@twitter.com +3bc27e3 nathan@twitter.com +1e8707c nathan@twitter.com +48248b5 nathan@twitter.com +aea2513 nathan@twitter.com +997fe0c nathan@twitter.com +dd86121 nathan@twitter.com +ea81b55 nathan@twitter.com +292d31a nathan@twitter.com +8c0ae06 nathan@twitter.com +3fe2200 nathan@twitter.com +cdf5c38 nathan@twitter.com +4bc2784 nathan@twitter.com +c15d20e nathan@twitter.com +34a2a95 nathan@twitter.com +4838a06 nathan@twitter.com +aadc136 nathan@twitter.com +d756aff nathan@twitter.com +80adc6a nathan@twitter.com +29504af nathan@twitter.com +782d57f nathan@twitter.com +63f11b1 nathan@twitter.com +c663832 nathan@twitter.com +aa656d3 nathan@twitter.com +4299517 nathan@twitter.com +72c476c nathan@twitter.com +f4ebac2 nathan@twitter.com +54e94a1 nathan@twitter.com +b930ee4 nathan@twitter.com +9178687 nathan@twitter.com +340dedc nathan@twitter.com +95d0771 nathan@twitter.com +c2b9a60 nathan@twitter.com +8aed7da nathan@twitter.com +b704893 nathan@twitter.com +302cc08 nathan@twitter.com +ccf5340 nathan@twitter.com +a384b05 nathan@twitter.com +943cfa9 nathan@twitter.com +2d0df52 nathan@twitter.com +cf7c9d1 nathan@twitter.com +940e136 nathan@twitter.com +861d9ab nathan@twitter.com +277d4e6 nathan@twitter.com +cf7a37b nathan@twitter.com +6bbc278 nathan@twitter.com +934240a nathan@twitter.com +ab5935c nathan@twitter.com +393357b nathan@twitter.com +03cb9f3 nathan@twitter.com +a8a5536 nathan@twitter.com +3cf6a95 nathan@twitter.com +52bea4f nathan@twitter.com +246845b nathan@twitter.com +44b6ede nathan@twitter.com +7371926 nathan@twitter.com +5c3bf86 nathan@twitter.com +720901f nathan@twitter.com +1f39064 nathan@twitter.com +bf75498 nathan@twitter.com +cd9d0a1 jtrost@endgames.us +573dd6a nathan@twitter.com +b39a710 nathan@twitter.com +57d1179 nathan@twitter.com +9224823 nathan@twitter.com +2028419 nathan@twitter.com +041d9c6 nathan@twitter.com +ff6eac6 nathan@twitter.com +b5c1960 nathan@twitter.com +f28af30 nathan@twitter.com +deffe3f nathan@twitter.com +6ee6d08 nathan@twitter.com +b08d3d0 nathan@twitter.com +8d7ebbf nathan@twitter.com +b8dae14 nathan@twitter.com +aef9360 nathan@twitter.com +b6eac26 nathan@twitter.com +6cd9c96 nathan@twitter.com +fe46b55 nathan@twitter.com +a352edd nathan@twitter.com +1056ecd nathan@twitter.com +b368e63 nathan@twitter.com +436a8ac nathan@twitter.com +9fbc42b nathan@twitter.com +1c02765 nathan@twitter.com +d6ff455 nathan@twitter.com +862e1c7 nathan@twitter.com +3760971 nathan@twitter.com +734082d nathan@twitter.com +f205124 nathan@twitter.com +c73dc01 nathan@twitter.com +f592566 nathan@twitter.com +fefef8f nathan@twitter.com +8919cdf nathan@twitter.com +cef7c2b nathan@twitter.com +e9e3ec2 nathan@twitter.com +b7ca3f4 nathan@twitter.com +8c63426 nathan@twitter.com +e1b6c24 nathan@twitter.com +7ef70ea nathan@twitter.com +fb38262 nathan@twitter.com +bc104ce nathan@twitter.com +8a01086 nathan@twitter.com +c91da28 nathan@twitter.com +3539864 nathan@twitter.com +52f051d patrick.houk@picotrading.com +5b9820a nathan@twitter.com +2a31acb nathan@twitter.com +f5e4432 nathan@twitter.com +81aba48 nathan@twitter.com +9567ec4 nathan@twitter.com +a3a9981 nathan@twitter.com +e9d0fc0 nathan@twitter.com +5c8b9d8 nathan@twitter.com +faa41dc nathan@twitter.com +bd2b88e nathan@twitter.com +b8bb84c nathan@twitter.com +b29176a nathan@twitter.com +96a62fd nathan@twitter.com +5423745 nathan@twitter.com +95a9a96 nathan@twitter.com +604cf3c nathan@twitter.com +7dcbe76 nathan@twitter.com +0d36249 nathan@twitter.com +db63ff1 nathan@twitter.com +6907554 nathan@twitter.com +50e078c nathan@twitter.com +a84259d nathan@twitter.com +3b21a8b nathan@twitter.com +b4e87a6 nathan@twitter.com +14ae323 nathan@twitter.com +6b38a12 nathan@twitter.com +4ba4e02 nathan@twitter.com +f39c0bd nathan@twitter.com +a2a004a nathan@twitter.com +8566351 nathan@twitter.com +c3fbb15 nathan@twitter.com +576577b nathan@twitter.com +acc414c nathan@twitter.com +92174d8 nathan@twitter.com +7ffb9cc nathan@twitter.com +0cd5707 nathan@twitter.com +fd70341 nathan@twitter.com +51e784c nathan@twitter.com +eb3601f nathan@twitter.com +bc9a360 nathan@twitter.com +c50f960 nathan@twitter.com +02cfd6b nathan@twitter.com +b419a6b nathan@twitter.com +44825be nathan@twitter.com +8615889 nathan@twitter.com +4eb9422 nathan@twitter.com +c89270b nathan@twitter.com +fbe24e6 nathan@twitter.com +fe26854 nathan@twitter.com +f597bb1 nathan@twitter.com +18dd742 nathan@twitter.com +9807286 nathan@twitter.com +2640983 nathan.marz@gmail.com +3226a1c nathan@twitter.com +2e41051 nathan@twitter.com +31f06a9 tom.payne@camptocamp.com +fa9e007 nathan@twitter.com +0699624 nathan@twitter.com +ccbf578 nathan@twitter.com +6fd04ab nathan@twitter.com +5aa6e3d nathan@twitter.com +084bbbb nathan@twitter.com +26125af nathan@twitter.com +57ddaae nathan@twitter.com +a95b418 nathan@twitter.com +476e910 nathan@twitter.com +14680ff nathan@twitter.com +6a3f94e nathan@twitter.com +feaafd4 nathan@twitter.com +028d76c nathan@twitter.com +8d236fc nathan@twitter.com +8336885 nathan@twitter.com +0e57b73 nathan@twitter.com +2c0b751 nathan@twitter.com +59998cf nathan@twitter.com +ed8729e nathan@twitter.com +1fea7a4 nathan@twitter.com +daf093d nathan@twitter.com +0c8d942 nathan@twitter.com +aa3f829 nathan@twitter.com +2937dc0 nathan@twitter.com +b3b4b71 nathan@twitter.com +e1bbcd8 nathan@twitter.com +2ec6631 nathan@twitter.com +f02533b nathan@twitter.com +3cee68b nathan@twitter.com +2fd62d9 nathan.marz@gmail.com +4e7a187 sam@rapportive.com +35772e8 nathan@twitter.com +2361703 nathan@twitter.com +095ce14 nathan@twitter.com +1130376 nathan@twitter.com +a8d85e4 nathan@twitter.com +969df63 nathan@twitter.com +25e8d8a nathan@twitter.com +2ce3acf nathan@twitter.com +3e84ddf nathan@twitter.com +f775c09 nathan@twitter.com +2ae6445 nathan@twitter.com +c47e105 nathan@twitter.com +2a022ae nathan@twitter.com +c2a5bf1 nathan@twitter.com +d5fdf94 nathan@twitter.com +1469557 nathan@twitter.com +2c77528 nathan@twitter.com +5fab34e nathan@twitter.com +9d91adb nathan@twitter.com \ No newline at end of file -- GitLab