Closed govpack closed 9 years ago
caught smiling after speeding, thinking man that's fun
speaking of New Mexico in 1848 america acquired texas, california, and utah...
http://en.wikipedia.org/wiki/Mexican_Cession speaking of New Mexico in 1848 america acquired texas, california, and utah, after invading and occupying mexico city in 1847. It didn't stop the people breeding, Mexico City has the same population as australia, about 22 million people.
in Chrome right click for the contexmenu and in between [Print...] and [View source] there should be [Translate to {{your_language}}]
En este grupo aprenderemos a desarrollar aplicaciones y juegos para web y dispositivos móviles utilizando JavaScript. La idea es desarrollar nuestras habilidades, conocer nuevas tecnologías y relacionarte con otras personas. Si sabes programar en JavaScript, no importando si eres experto o principiante, y te interesa aprender y compartir tus conocimientos, únete a nuestro grupo.
This group will learn to develop applications and games for web and mobile devices using JavaScript . The idea is to develop our skills, learn new technologies and interact with others . If you know how to program in JavaScript , no matter if you are an expert or beginner, and are interested in learning and sharing your knowledge , join our group.
listening to the workflows of Marak - The Git Rap.wav ZOMG ITS GIT RAP TIME https://github.com/Marak/The-Git-Rap
https://www.youtube.com/user/ipythondev i follow this channel, and watch it weekly, like realtity tv, it's the ipython notebook dev team meeting, out of berkley. it's the command console meets the browser, python meets javascript, meets the bikeshed, meets refactoring and additions, meets the the minutiae of someone explaining their change logs, meets nice work team, https://github.com/jupyter - ployglot browser based consoles are the future, that's what i'm working to improve on, so there are parallels i can relate to, and some happy differences!!
https://www.youtube.com/watch?v=6dE9e0Wr-RY 1:19:09 IPython Lab Meeting by IPython
nine minutes, no views, i'll give it a big +1 by watching it
i recently got iojs and hence cp.execSync() working after posting an issue it was my issue not theirs, and @Fishrock123 got me pointed in the right direction :-)
function execSync(/*comand, options*/) {
var opts = normalizeExecArgs.apply(null, arguments);
var inheritStderr = opts.options ? !opts.options.stdio : true;
var ret = spawnSync(opts.file, opts.args, opts.options); ret.cmd = opts.cmd;
if (inheritStderr) process.stderr.write(ret.stderr);
var err = checkExecSyncError(ret);
if (err) throw err; else return ret.stdout;}
i'll look that up and explain where the bug was, because it was an important one to me, and quite the revelation when i found it, thanks fishrock
https://www.youtube.com/watch?v=rlheXYqwavM The Frames - Revelate
My simple slant. This broken chant My humble fate. My revelate Are you so far from me this day That you can't say my revelate My open arms. My lucky charms My number eight. My revelate I fucked it up. I rest my case Cause it's all to grey. My revelate Sometimes I need your revelation Sometimes I need a revelation
Always be learning! Always be testing! Always be trolling! but there's no need to focus on any excessively on of those things, because they are an intrinsic part of getting anything done (yoda+nike was trying to tell us that) this is where academics and academia from an early age has lead us all astray -- lets spend 12 years ±1,2,3,4,5 loading up the suitcase with a lot of things you probably won't use, nice
┌───────────jira-kosher────────────────────────────┐ ├── ♫ Gherkin/JIRA Automator ├── ♫ N20479 ├── ♫ TE:mocha -t 999999 ├── ♫ CMD:iojs.exe C:/node_modules/mocha/bin/mocha -t 999999 ├── ♫ WD:mocha
no because it stalled the process and won't time out for ages, it's the deps, peeps they are a major hassle. maybe the app ought to take more responsibility for bootstrapping
┌────────jpickle───────────────────────────┐ ├── ♫ Full-javascript parser for Python's pickle format ├── ♫ TE:mocha ├── ♫ CMD:iojs.exe C:/node_modules/mocha/bin/mocha
pickle version 2 classes √ should decode simple classes √ should decode simple classes in a container √ should decode classes containing classes √ should decode a subclass and a superclass √ should decode classes containing method
pickle version 0 √ should decode none √ should decode integers √ should decode booleans √ should decode floats √ should decode longstrings √ should decode strings √ should decode unicodes √ should decode tuples √ should decode lists √ should decode dicts √ should handle pop √ should handle pop_mark √ should handle dup √ should handle put / get
pickle version 1 √ should decode integers √ should decode floats √ should decode strings √ should decode unicodes √ should decode tuples √ should decode lists √ should decode dicts √ should handle put / get
pickle version 2 √ should decode booleans √ should decode longs to zero √ should decode tuples √ should decode naive datetimes √ should decode aware datetimes
complex example √ should decode a complex example
33 passing (15ms)
Speaking of issues (issues on issues, migrating issues) https://youtu.be/6dE9e0Wr-RY?t=40m5s
"they're going to break, just break, they'll just break" (a good thing) https://youtu.be/6dE9e0Wr-RY?t=42m
and a Rumsfield moment in there, https://youtu.be/6dE9e0Wr-RY?t=43m
getting killed with the ipython/name change, or WAY too much diligence, or being trapped by being able to automate the github api
[hey, just email the list of contributors about the new repo, and if they have any current issues, to check the current build and make a fresh post to the new project if it is still an issue] no code required
now they are migrating their docs away, from sphinx and into their own notebook format, which has gone from sqlite and now thru a few versions, of JSON as the container, and a fantastic demonstration of its mixed utility for descriptions, code editing, and markdown type layouts.
new hampshire acquisition of signal
Elon Musk @elonmusk 1h1 hour ago
https://www.youtube.com/watch?v=0oTh1CXRaQ0 David Beazley is speaking about python paths modules, env's and imports
he is one bad ass http://programming-motherfucker.com/
https://youtu.be/0oTh1CXRaQ0?t=1h43m33s "it's modules all the way down, module objects, it's hard to describe how dumb import is in some way" ~ David Beazley
__proto__
is now legit
Object.prototype.proto already exists today in most browsers, its behavior has only been standardized recently in the new ECMAScript 6 specification
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/proto
http://kangax.github.io/compat-table/es6/#Object.prototype.__proto__
http://kangax.github.io/compat-table/es6/#__proto___in_object_literals
it's the only way FORWARD -- web developers SHOULD have been doing this the whole time -- a crappy browser deserves a crappy experience, when updating is simple and free why should this have ever been a problem? a problem only created by SOFTʷᵃʳᵉ developers who set out to appease everyone (and mobile into the mix). IE 5.5 was a winner it had all the stuff html5 is only getting now (vectors, transitions, behaviours, etc, etc, etc) they had to stop to let the others catch up, instead people made them a scapegoat for their own incompetence, and inability to just let things fail and move on.
what's wrong with just a set of functions, and leaving objects to contain just data, OOPs you did it again, over complicated things. prototype doesn't work for dynamically run code after page load, so it's always been a bit of a non starter for me.
opps, where have the underscores gone http://meta.stackexchange.com/questions/26165/how-can-i-type-an-underscore-symbol-as-part-of-a-word
just fixed everything i hate about JSON with this joke https://youtu.be/wf-BqAjZb8M?t=18m a long "o" ~ lol
https://www.youtube.com/watch?v=Zd8KIQzo5jg "Uploaded on Dec 8, 2006. This is taken from the Purdue CS Employee Appreciation Social. It features MC Plus+ and DJ Lord Illingworth entertaining the Purdue CS facutly, staff, and students."
...was failing for a some existing code i had i had some code that worked, i tried in on a new MINOR version of node and it failed which was bugging me because i had been wanting to use execSync() for a while
the issue and subsequent solution is described here: https://github.com/iojs/io.js/issues/1316 it was solved after posting an issue to the iojs repo, thanks people
my conclusions from this:
No amount of unit testing would have solved this, working directly on the code itself is the MAIN thing!! Version numbers, unit tests, install/setup/config, and especially comments (particularly this one ;-) are a weakness, and a sickness.
i'm happy that it's there, just don't expect me to care, or understand
.gitignore .npmignore bower.json component.json composer.json CONTRIBUTING.md Gemfile Gemfile.lock package.json README.md _config.yml .git/config .git/description .git/HEAD .git/index .git/packed-refs .git/hooks/applypatch-msg.sample .git/hooks/commit-msg.sample .git/hooks/post-update.sample .git/hooks/pre-applypatch.sample .git/hooks/pre-commit.sample .git/hooks/pre-push.sample .git/hooks/pre-rebase.sample .git/hooks/prepare-commit-msg.sample .git/hooks/update.sample .git/info/exclude .git/logs/HEAD .git/logs/refs/heads/master .git/logs/refs/remotes/origin/HEAD .git/objects/pack/pack-997772535e74a5543578b6cf2d424649884c953e.idx .git/objects/pack/pack-997772535e74a5543578b6cf2d424649884c953e.pack .git/refs/heads/master .git/refs/remotes/origin/HEAD css/font-awesome.css css/font-awesome.css.map css/font-awesome.min.css fonts/fontawesome-webfont.eot fonts/fontawesome-webfont.svg fonts/fontawesome-webfont.ttf fonts/fontawesome-webfont.woff fonts/fontawesome-webfont.woff2 fonts/FontAwesome.otf less/animated.less less/bordered-pulled.less less/core.less less/fixed-width.less less/font-awesome.less less/icons.less less/larger.less less/list.less less/mixins.less less/path.less less/rotated-flipped.less less/stacked.less less/variables.less scss/font-awesome.scss scss/_animated.scss scss/_bordered-pulled.scss scss/_core.scss scss/_fixed-width.scss scss/_icons.scss scss/_larger.scss scss/_list.scss scss/_mixins.scss scss/_path.scss scss/_rotated-flipped.scss scss/_stacked.scss scss/_variables.scss src/cheatsheet.html src/CNAME src/community.html src/design.html src/examples.html src/get-started.html src/glyphicons-test.html src/icons.html src/icons.yml src/index.html src/license.html src/Makefile src/README.md-nobuild src/test-2.3.2.html src/test.html src/whats-new.html src/3.2.1/CNAME src/3.2.1/design.html src/3.2.1/icons.yml src/3.2.1/index.html src/3.2.1/Makefile src/3.2.1/assets/font-awesome.zip src/3.2.1/assets/css/prettify.css src/3.2.1/assets/css/pygments.css src/3.2.1/assets/css/site.css src/3.2.1/assets/font-awesome/css/font-awesome-ie7.css src/3.2.1/assets/font-awesome/css/font-awesome-ie7.min.css src/3.2.1/assets/font-awesome/css/font-awesome.css src/3.2.1/assets/font-awesome/css/font-awesome.min.css src/3.2.1/assets/font-awesome/font/fontawesome-webfont.eot src/3.2.1/assets/font-awesome/font/fontawesome-webfont.svg src/3.2.1/assets/font-awesome/font/fontawesome-webfont.ttf src/3.2.1/assets/font-awesome/font/fontawesome-webfont.woff src/3.2.1/assets/font-awesome/font/FontAwesome.otf src/3.2.1/assets/font-awesome/less/bootstrap.less src/3.2.1/assets/font-awesome/less/core.less src/3.2.1/assets/font-awesome/less/extras.less src/3.2.1/assets/font-awesome/less/font-awesome-ie7.less src/3.2.1/assets/font-awesome/less/font-awesome.less src/3.2.1/assets/font-awesome/less/icons.less src/3.2.1/assets/font-awesome/less/mixins.less src/3.2.1/assets/font-awesome/less/path.less src/3.2.1/assets/font-awesome/less/variables.less src/3.2.1/assets/font-awesome/scss/font-awesome-ie7.scss src/3.2.1/assets/font-awesome/scss/font-awesome.scss src/3.2.1/assets/font-awesome/scss/_bootstrap.scss src/3.2.1/assets/font-awesome/scss/_core.scss src/3.2.1/assets/font-awesome/scss/_extras.scss src/3.2.1/assets/font-awesome/scss/_icons.scss src/3.2.1/assets/font-awesome/scss/_mixins.scss src/3.2.1/assets/font-awesome/scss/_path.scss src/3.2.1/assets/font-awesome/scss/_variables.scss src/3.2.1/assets/ico/favicon.ico src/3.2.1/assets/img/contribution-sample.png src/3.2.1/assets/img/fort_awesome.jpg src/3.2.1/assets/img/glyphicons-halflings-white.png src/3.2.1/assets/img/glyphicons-halflings.png src/3.2.1/assets/img/icon-flag.pdf src/3.2.1/assets/js/backbone.min.js src/3.2.1/assets/js/bootstrap-2.3.1.min.js src/3.2.1/assets/js/bootstrap-222.min.js src/3.2.1/assets/js/jquery-1.7.1.min.js src/3.2.1/assets/js/prettify.min.js src/3.2.1/assets/js/site.js src/3.2.1/assets/js/underscore.min.js src/3.2.1/assets/js/ZeroClipboard-1.1.7.min.js src/3.2.1/assets/js/ZeroClipboard-1.1.7.swf src/3.2.1/assets/less/lazy.less src/3.2.1/assets/less/mixins.less src/3.2.1/assets/less/responsive-1200px-min.less src/3.2.1/assets/less/responsive-767px-max.less src/3.2.1/assets/less/responsive-768px-979px.less src/3.2.1/assets/less/responsive-navbar.less src/3.2.1/assets/less/responsive.less src/3.2.1/assets/less/site.less src/3.2.1/assets/less/sticky-footer.less src/3.2.1/assets/less/variables.less src/3.2.1/assets/less/bootstrap-2.3.2/accordion.less src/3.2.1/assets/less/bootstrap-2.3.2/alerts.less src/3.2.1/assets/less/bootstrap-2.3.2/bootstrap.less src/3.2.1/assets/less/bootstrap-2.3.2/breadcrumbs.less src/3.2.1/assets/less/bootstrap-2.3.2/button-groups.less src/3.2.1/assets/less/bootstrap-2.3.2/buttons.less src/3.2.1/assets/less/bootstrap-2.3.2/carousel.less src/3.2.1/assets/less/bootstrap-2.3.2/close.less src/3.2.1/assets/less/bootstrap-2.3.2/code.less src/3.2.1/assets/less/bootstrap-2.3.2/component-animations.less src/3.2.1/assets/less/bootstrap-2.3.2/dropdowns.less src/3.2.1/assets/less/bootstrap-2.3.2/forms.less src/3.2.1/assets/less/bootstrap-2.3.2/grid.less src/3.2.1/assets/less/bootstrap-2.3.2/hero-unit.less src/3.2.1/assets/less/bootstrap-2.3.2/labels-badges.less src/3.2.1/assets/less/bootstrap-2.3.2/layouts.less src/3.2.1/assets/less/bootstrap-2.3.2/media.less src/3.2.1/assets/less/bootstrap-2.3.2/mixins.less src/3.2.1/assets/less/bootstrap-2.3.2/modals.less src/3.2.1/assets/less/bootstrap-2.3.2/navbar.less src/3.2.1/assets/less/bootstrap-2.3.2/navs.less src/3.2.1/assets/less/bootstrap-2.3.2/pager.less src/3.2.1/assets/less/bootstrap-2.3.2/pagination.less src/3.2.1/assets/less/bootstrap-2.3.2/popovers.less src/3.2.1/assets/less/bootstrap-2.3.2/progress-bars.less src/3.2.1/assets/less/bootstrap-2.3.2/reset.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive-1200px-min.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive-767px-max.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive-768px-979px.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive-navbar.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive-utilities.less src/3.2.1/assets/less/bootstrap-2.3.2/responsive.less src/3.2.1/assets/less/bootstrap-2.3.2/scaffolding.less src/3.2.1/assets/less/bootstrap-2.3.2/sprites.less src/3.2.1/assets/less/bootstrap-2.3.2/tables.less src/3.2.1/assets/less/bootstrap-2.3.2/thumbnails.less src/3.2.1/assets/less/bootstrap-2.3.2/tooltip.less src/3.2.1/assets/less/bootstrap-2.3.2/type.less src/3.2.1/assets/less/bootstrap-2.3.2/utilities.less src/3.2.1/assets/less/bootstrap-2.3.2/variables.less src/3.2.1/assets/less/bootstrap-2.3.2/wells.less src/3.2.1/cheatsheet/index.html src/3.2.1/community/index.html src/3.2.1/examples/index.html src/3.2.1/get-started/index.html src/3.2.1/icon/adjust/index.html src/3.2.1/icon/adn/index.html src/3.2.1/icon/align-center/index.html src/3.2.1/icon/align-justify/index.html src/3.2.1/icon/align-left/index.html src/3.2.1/icon/align-right/index.html src/3.2.1/icon/ambulance/index.html src/3.2.1/icon/anchor/index.html src/3.2.1/icon/android/index.html src/3.2.1/icon/angle-down/index.html src/3.2.1/icon/angle-left/index.html src/3.2.1/icon/angle-right/index.html src/3.2.1/icon/angle-up/index.html src/3.2.1/icon/apple/index.html src/3.2.1/icon/archive/index.html src/3.2.1/icon/arrow-down/index.html src/3.2.1/icon/arrow-left/index.html src/3.2.1/icon/arrow-right/index.html src/3.2.1/icon/arrow-up/index.html src/3.2.1/icon/asterisk/index.html src/3.2.1/icon/backward/index.html src/3.2.1/icon/ban-circle/index.html src/3.2.1/icon/bar-chart/index.html src/3.2.1/icon/barcode/index.html src/3.2.1/icon/beaker/index.html src/3.2.1/icon/beer/index.html src/3.2.1/icon/bell/index.html src/3.2.1/icon/bell-alt/index.html src/3.2.1/icon/bitbucket/index.html src/3.2.1/icon/bitbucket-sign/index.html src/3.2.1/icon/bold/index.html src/3.2.1/icon/bolt/index.html src/3.2.1/icon/book/index.html src/3.2.1/icon/bookmark/index.html src/3.2.1/icon/bookmark-empty/index.html src/3.2.1/icon/briefcase/index.html src/3.2.1/icon/btc/index.html src/3.2.1/icon/bug/index.html src/3.2.1/icon/building/index.html src/3.2.1/icon/bullhorn/index.html src/3.2.1/icon/bullseye/index.html src/3.2.1/icon/calendar/index.html src/3.2.1/icon/calendar-empty/index.html src/3.2.1/icon/camera/index.html src/3.2.1/icon/camera-retro/index.html src/3.2.1/icon/caret-down/index.html src/3.2.1/icon/caret-left/index.html src/3.2.1/icon/caret-right/index.html src/3.2.1/icon/caret-up/index.html src/3.2.1/icon/certificate/index.html src/3.2.1/icon/check/index.html src/3.2.1/icon/check-empty/index.html src/3.2.1/icon/check-minus/index.html src/3.2.1/icon/check-sign/index.html src/3.2.1/icon/chevron-down/index.html src/3.2.1/icon/chevron-left/index.html src/3.2.1/icon/chevron-right/index.html src/3.2.1/icon/chevron-sign-down/index.html src/3.2.1/icon/chevron-sign-left/index.html src/3.2.1/icon/chevron-sign-right/index.html src/3.2.1/icon/chevron-sign-up/index.html src/3.2.1/icon/chevron-up/index.html src/3.2.1/icon/circle/index.html src/3.2.1/icon/circle-arrow-down/index.html src/3.2.1/icon/circle-arrow-left/index.html src/3.2.1/icon/circle-arrow-right/index.html src/3.2.1/icon/circle-arrow-up/index.html src/3.2.1/icon/circle-blank/index.html src/3.2.1/icon/cloud/index.html src/3.2.1/icon/cloud-download/index.html src/3.2.1/icon/cloud-upload/index.html src/3.2.1/icon/cny/index.html src/3.2.1/icon/code/index.html src/3.2.1/icon/code-fork/index.html src/3.2.1/icon/coffee/index.html src/3.2.1/icon/cog/index.html src/3.2.1/icon/cogs/index.html src/3.2.1/icon/collapse/index.html src/3.2.1/icon/collapse-alt/index.html src/3.2.1/icon/collapse-top/index.html src/3.2.1/icon/columns/index.html src/3.2.1/icon/comment/index.html src/3.2.1/icon/comment-alt/index.html src/3.2.1/icon/comments/index.html src/3.2.1/icon/comments-alt/index.html src/3.2.1/icon/compass/index.html src/3.2.1/icon/copy/index.html src/3.2.1/icon/credit-card/index.html src/3.2.1/icon/crop/index.html src/3.2.1/icon/css3/index.html src/3.2.1/icon/cut/index.html src/3.2.1/icon/dashboard/index.html src/3.2.1/icon/desktop/index.html src/3.2.1/icon/double-angle-down/index.html src/3.2.1/icon/double-angle-left/index.html src/3.2.1/icon/double-angle-right/index.html src/3.2.1/icon/double-angle-up/index.html src/3.2.1/icon/download/index.html src/3.2.1/icon/download-alt/index.html src/3.2.1/icon/dribbble/index.html src/3.2.1/icon/dropbox/index.html src/3.2.1/icon/edit/index.html src/3.2.1/icon/edit-sign/index.html src/3.2.1/icon/eject/index.html src/3.2.1/icon/ellipsis-horizontal/index.html src/3.2.1/icon/ellipsis-vertical/index.html src/3.2.1/icon/envelope/index.html src/3.2.1/icon/envelope-alt/index.html src/3.2.1/icon/eraser/index.html src/3.2.1/icon/eur/index.html src/3.2.1/icon/exchange/index.html src/3.2.1/icon/exclamation/index.html src/3.2.1/icon/exclamation-sign/index.html src/3.2.1/icon/expand/index.html src/3.2.1/icon/expand-alt/index.html src/3.2.1/icon/external-link/index.html src/3.2.1/icon/external-link-sign/index.html src/3.2.1/icon/eye-close/index.html src/3.2.1/icon/eye-open/index.html src/3.2.1/icon/facebook/index.html src/3.2.1/icon/facebook-sign/index.html src/3.2.1/icon/facetime-video/index.html src/3.2.1/icon/fast-backward/index.html src/3.2.1/icon/fast-forward/index.html src/3.2.1/icon/female/index.html src/3.2.1/icon/fighter-jet/index.html src/3.2.1/icon/file/index.html src/3.2.1/icon/file-alt/index.html src/3.2.1/icon/file-text/index.html src/3.2.1/icon/file-text-alt/index.html src/3.2.1/icon/film/index.html src/3.2.1/icon/filter/index.html src/3.2.1/icon/fire/index.html src/3.2.1/icon/fire-extinguisher/index.html src/3.2.1/icon/flag/index.html src/3.2.1/icon/flag-alt/index.html src/3.2.1/icon/flag-checkered/index.html src/3.2.1/icon/flickr/index.html src/3.2.1/icon/folder-close/index.html src/3.2.1/icon/folder-close-alt/index.html src/3.2.1/icon/folder-open/index.html src/3.2.1/icon/folder-open-alt/index.html src/3.2.1/icon/font/index.html src/3.2.1/icon/food/index.html src/3.2.1/icon/forward/index.html src/3.2.1/icon/foursquare/index.html src/3.2.1/icon/frown/index.html src/3.2.1/icon/fullscreen/index.html src/3.2.1/icon/gamepad/index.html src/3.2.1/icon/gbp/index.html src/3.2.1/icon/gift/index.html src/3.2.1/icon/github/index.html src/3.2.1/icon/github-alt/index.html src/3.2.1/icon/github-sign/index.html src/3.2.1/icon/gittip/index.html src/3.2.1/icon/glass/index.html src/3.2.1/icon/globe/index.html src/3.2.1/icon/google-plus/index.html src/3.2.1/icon/google-plus-sign/index.html src/3.2.1/icon/group/index.html src/3.2.1/icon/h-sign/index.html src/3.2.1/icon/hand-down/index.html src/3.2.1/icon/hand-left/index.html src/3.2.1/icon/hand-right/index.html src/3.2.1/icon/hand-up/index.html src/3.2.1/icon/hdd/index.html src/3.2.1/icon/headphones/index.html src/3.2.1/icon/heart/index.html src/3.2.1/icon/heart-empty/index.html src/3.2.1/icon/home/index.html src/3.2.1/icon/hospital/index.html src/3.2.1/icon/html5/index.html src/3.2.1/icon/inbox/index.html src/3.2.1/icon/indent-left/index.html src/3.2.1/icon/indent-right/index.html src/3.2.1/icon/info/index.html src/3.2.1/icon/info-sign/index.html src/3.2.1/icon/inr/index.html src/3.2.1/icon/instagram/index.html src/3.2.1/icon/italic/index.html src/3.2.1/icon/jpy/index.html src/3.2.1/icon/key/index.html src/3.2.1/icon/keyboard/index.html src/3.2.1/icon/krw/index.html src/3.2.1/icon/laptop/index.html src/3.2.1/icon/leaf/index.html src/3.2.1/icon/legal/index.html src/3.2.1/icon/lemon/index.html src/3.2.1/icon/level-down/index.html src/3.2.1/icon/level-up/index.html src/3.2.1/icon/lightbulb/index.html src/3.2.1/icon/link/index.html src/3.2.1/icon/linkedin/index.html src/3.2.1/icon/linkedin-sign/index.html src/3.2.1/icon/linux/index.html src/3.2.1/icon/list/index.html src/3.2.1/icon/list-alt/index.html src/3.2.1/icon/list-ol/index.html src/3.2.1/icon/list-ul/index.html src/3.2.1/icon/location-arrow/index.html src/3.2.1/icon/lock/index.html src/3.2.1/icon/long-arrow-down/index.html src/3.2.1/icon/long-arrow-left/index.html src/3.2.1/icon/long-arrow-right/index.html src/3.2.1/icon/long-arrow-up/index.html src/3.2.1/icon/magic/index.html src/3.2.1/icon/magnet/index.html src/3.2.1/icon/mail-reply-all/index.html src/3.2.1/icon/male/index.html src/3.2.1/icon/map-marker/index.html src/3.2.1/icon/maxcdn/index.html src/3.2.1/icon/medkit/index.html src/3.2.1/icon/meh/index.html src/3.2.1/icon/microphone/index.html src/3.2.1/icon/microphone-off/index.html src/3.2.1/icon/minus/index.html src/3.2.1/icon/minus-sign/index.html src/3.2.1/icon/minus-sign-alt/index.html src/3.2.1/icon/mobile-phone/index.html src/3.2.1/icon/money/index.html src/3.2.1/icon/moon/index.html src/3.2.1/icon/move/index.html src/3.2.1/icon/music/index.html src/3.2.1/icon/off/index.html src/3.2.1/icon/ok/index.html src/3.2.1/icon/ok-circle/index.html src/3.2.1/icon/ok-sign/index.html src/3.2.1/icon/paper-clip/index.html src/3.2.1/icon/paste/index.html src/3.2.1/icon/pause/index.html src/3.2.1/icon/pencil/index.html src/3.2.1/icon/phone/index.html src/3.2.1/icon/phone-sign/index.html src/3.2.1/icon/picture/index.html src/3.2.1/icon/pinterest/index.html src/3.2.1/icon/pinterest-sign/index.html src/3.2.1/icon/plane/index.html src/3.2.1/icon/play/index.html src/3.2.1/icon/play-circle/index.html src/3.2.1/icon/play-sign/index.html src/3.2.1/icon/plus/index.html src/3.2.1/icon/plus-sign/index.html src/3.2.1/icon/plus-sign-alt/index.html src/3.2.1/icon/print/index.html src/3.2.1/icon/pushpin/index.html src/3.2.1/icon/puzzle-piece/index.html src/3.2.1/icon/qrcode/index.html src/3.2.1/icon/question/index.html src/3.2.1/icon/question-sign/index.html src/3.2.1/icon/quote-left/index.html src/3.2.1/icon/quote-right/index.html src/3.2.1/icon/random/index.html src/3.2.1/icon/refresh/index.html src/3.2.1/icon/remove/index.html src/3.2.1/icon/remove-circle/index.html src/3.2.1/icon/remove-sign/index.html src/3.2.1/icon/renren/index.html src/3.2.1/icon/reorder/index.html src/3.2.1/icon/repeat/index.html src/3.2.1/icon/reply/index.html src/3.2.1/icon/reply-all/index.html src/3.2.1/icon/resize-full/index.html src/3.2.1/icon/resize-horizontal/index.html src/3.2.1/icon/resize-small/index.html src/3.2.1/icon/resize-vertical/index.html src/3.2.1/icon/retweet/index.html src/3.2.1/icon/road/index.html src/3.2.1/icon/rocket/index.html src/3.2.1/icon/rss/index.html src/3.2.1/icon/rss-sign/index.html src/3.2.1/icon/save/index.html src/3.2.1/icon/screenshot/index.html src/3.2.1/icon/search/index.html src/3.2.1/icon/share/index.html src/3.2.1/icon/share-alt/index.html src/3.2.1/icon/share-sign/index.html src/3.2.1/icon/shield/index.html src/3.2.1/icon/shopping-cart/index.html src/3.2.1/icon/sign-blank/index.html src/3.2.1/icon/signal/index.html src/3.2.1/icon/signin/index.html src/3.2.1/icon/signout/index.html src/3.2.1/icon/sitemap/index.html src/3.2.1/icon/skype/index.html src/3.2.1/icon/smile/index.html src/3.2.1/icon/sort/index.html src/3.2.1/icon/sort-by-alphabet/index.html src/3.2.1/icon/sort-by-alphabet-alt/index.html src/3.2.1/icon/sort-by-attributes/index.html src/3.2.1/icon/sort-by-attributes-alt/index.html src/3.2.1/icon/sort-by-order/index.html src/3.2.1/icon/sort-by-order-alt/index.html src/3.2.1/icon/sort-down/index.html src/3.2.1/icon/sort-up/index.html src/3.2.1/icon/spinner/index.html src/3.2.1/icon/stackexchange/index.html src/3.2.1/icon/star/index.html src/3.2.1/icon/star-empty/index.html src/3.2.1/icon/star-half/index.html src/3.2.1/icon/star-half-empty/index.html src/3.2.1/icon/step-backward/index.html src/3.2.1/icon/step-forward/index.html src/3.2.1/icon/stethoscope/index.html src/3.2.1/icon/stop/index.html src/3.2.1/icon/strikethrough/index.html src/3.2.1/icon/subscript/index.html src/3.2.1/icon/suitcase/index.html src/3.2.1/icon/sun/index.html src/3.2.1/icon/superscript/index.html src/3.2.1/icon/table/index.html src/3.2.1/icon/tablet/index.html src/3.2.1/icon/tag/index.html src/3.2.1/icon/tags/index.html src/3.2.1/icon/tasks/index.html src/3.2.1/icon/terminal/index.html src/3.2.1/icon/text-height/index.html src/3.2.1/icon/text-width/index.html src/3.2.1/icon/th/index.html src/3.2.1/icon/th-large/index.html src/3.2.1/icon/th-list/index.html src/3.2.1/icon/thumbs-down/index.html src/3.2.1/icon/thumbs-down-alt/index.html src/3.2.1/icon/thumbs-up/index.html src/3.2.1/icon/thumbs-up-alt/index.html src/3.2.1/icon/ticket/index.html src/3.2.1/icon/time/index.html src/3.2.1/icon/tint/index.html src/3.2.1/icon/trash/index.html src/3.2.1/icon/trello/index.html src/3.2.1/icon/trophy/index.html src/3.2.1/icon/truck/index.html src/3.2.1/icon/tumblr/index.html src/3.2.1/icon/tumblr-sign/index.html src/3.2.1/icon/twitter/index.html src/3.2.1/icon/twitter-sign/index.html src/3.2.1/icon/umbrella/index.html src/3.2.1/icon/underline/index.html src/3.2.1/icon/undo/index.html src/3.2.1/icon/unlink/index.html src/3.2.1/icon/unlock/index.html src/3.2.1/icon/unlock-alt/index.html src/3.2.1/icon/upload/index.html src/3.2.1/icon/upload-alt/index.html src/3.2.1/icon/usd/index.html src/3.2.1/icon/user/index.html src/3.2.1/icon/user-md/index.html src/3.2.1/icon/vk/index.html src/3.2.1/icon/volume-down/index.html src/3.2.1/icon/volume-off/index.html src/3.2.1/icon/volume-up/index.html src/3.2.1/icon/warning-sign/index.html src/3.2.1/icon/weibo/index.html src/3.2.1/icon/windows/index.html src/3.2.1/icon/wrench/index.html src/3.2.1/icon/xing/index.html src/3.2.1/icon/xing-sign/index.html src/3.2.1/icon/youtube/index.html src/3.2.1/icon/youtube-play/index.html src/3.2.1/icon/youtube-sign/index.html src/3.2.1/icon/zoom-in/index.html src/3.2.1/icon/zoom-out/index.html src/3.2.1/icons/index.html src/3.2.1/license/index.html src/3.2.1/test/index.html src/3.2.1/whats-new/index.html src/assets/css/prettify.css src/assets/css/pygments.css src/assets/font-awesome/fonts/fontawesome-webfont.eot src/assets/font-awesome/fonts/fontawesome-webfont.svg src/assets/font-awesome/fonts/fontawesome-webfont.ttf src/assets/font-awesome/fonts/fontawesome-webfont.woff src/assets/font-awesome/fonts/fontawesome-webfont.woff2 src/assets/font-awesome/fonts/FontAwesome.otf src/assets/font-awesome/less/animated.less src/assets/font-awesome/less/bordered-pulled.less src/assets/font-awesome/less/core.less src/assets/font-awesome/less/fixed-width.less src/assets/font-awesome/less/font-awesome.less src/assets/font-awesome/less/icons.less src/assets/font-awesome/less/larger.less src/assets/font-awesome/less/list.less src/assets/font-awesome/less/mixins.less src/assets/font-awesome/less/path.less src/assets/font-awesome/less/rotated-flipped.less src/assets/font-awesome/less/stacked.less src/assets/font-awesome/less/variables.less src/assets/font-awesome/scss/font-awesome.scss src/assets/font-awesome/scss/_animated.scss src/assets/font-awesome/scss/_bordered-pulled.scss src/assets/font-awesome/scss/_core.scss src/assets/font-awesome/scss/_fixed-width.scss src/assets/font-awesome/scss/_icons.scss src/assets/font-awesome/scss/_larger.scss src/assets/font-awesome/scss/_list.scss src/assets/font-awesome/scss/_mixins.scss src/assets/font-awesome/scss/_path.scss src/assets/font-awesome/scss/_rotated-flipped.scss src/assets/font-awesome/scss/_stacked.scss src/assets/font-awesome/scss/_variables.scss src/assets/ico/favicon.ico src/assets/img/logo-wpbeginner.png src/assets/js/backbone.min.js src/assets/js/bootstrap-2.3.1.min.js src/assets/js/bootstrap-3.0.2.min.js src/assets/js/bootstrap-3.1.1.min.js src/assets/js/html5shiv.js src/assets/js/jquery-1.10.2.js src/assets/js/jquery-1.10.2.min.js src/assets/js/jquery-1.10.2.min.map src/assets/js/jquery-1.7.1.min.js src/assets/js/prettify.min.js src/assets/js/respond.min.js src/assets/js/site.js src/assets/js/tabcomplete.min.js src/assets/js/underscore.min.js src/assets/js/ZeroClipboard-1.1.7.min.js src/assets/js/ZeroClipboard-1.1.7.swf src/assets/less/site.less src/assets/less/bootstrap-3.2.0/.csscomb.json src/assets/less/bootstrap-3.2.0/.csslintrc src/assets/less/bootstrap-3.2.0/alerts.less src/assets/less/bootstrap-3.2.0/badges.less src/assets/less/bootstrap-3.2.0/bootstrap.less src/assets/less/bootstrap-3.2.0/breadcrumbs.less src/assets/less/bootstrap-3.2.0/button-groups.less src/assets/less/bootstrap-3.2.0/buttons.less src/assets/less/bootstrap-3.2.0/carousel.less src/assets/less/bootstrap-3.2.0/close.less src/assets/less/bootstrap-3.2.0/code.less src/assets/less/bootstrap-3.2.0/component-animations.less src/assets/less/bootstrap-3.2.0/dropdowns.less src/assets/less/bootstrap-3.2.0/forms.less src/assets/less/bootstrap-3.2.0/glyphicons.less src/assets/less/bootstrap-3.2.0/grid.less src/assets/less/bootstrap-3.2.0/input-groups.less src/assets/less/bootstrap-3.2.0/jumbotron.less src/assets/less/bootstrap-3.2.0/labels.less src/assets/less/bootstrap-3.2.0/list-group.less src/assets/less/bootstrap-3.2.0/media.less src/assets/less/bootstrap-3.2.0/mixins.less src/assets/less/bootstrap-3.2.0/modals.less src/assets/less/bootstrap-3.2.0/navbar.less src/assets/less/bootstrap-3.2.0/navs.less src/assets/less/bootstrap-3.2.0/normalize.less src/assets/less/bootstrap-3.2.0/pager.less src/assets/less/bootstrap-3.2.0/pagination.less src/assets/less/bootstrap-3.2.0/panels.less src/assets/less/bootstrap-3.2.0/popovers.less src/assets/less/bootstrap-3.2.0/print.less src/assets/less/bootstrap-3.2.0/progress-bars.less src/assets/less/bootstrap-3.2.0/responsive-embed.less src/assets/less/bootstrap-3.2.0/responsive-utilities.less src/assets/less/bootstrap-3.2.0/scaffolding.less src/assets/less/bootstrap-3.2.0/tables.less src/assets/less/bootstrap-3.2.0/theme.less src/assets/less/bootstrap-3.2.0/thumbnails.less src/assets/less/bootstrap-3.2.0/tooltip.less src/assets/less/bootstrap-3.2.0/type.less src/assets/less/bootstrap-3.2.0/utilities.less src/assets/less/bootstrap-3.2.0/variables.less src/assets/less/bootstrap-3.2.0/wells.less src/assets/less/bootstrap-3.2.0/mixins/alerts.less src/assets/less/bootstrap-3.2.0/mixins/background-variant.less src/assets/less/bootstrap-3.2.0/mixins/border-radius.less src/assets/less/bootstrap-3.2.0/mixins/buttons.less src/assets/less/bootstrap-3.2.0/mixins/center-block.less src/assets/less/bootstrap-3.2.0/mixins/clearfix.less src/assets/less/bootstrap-3.2.0/mixins/forms.less src/assets/less/bootstrap-3.2.0/mixins/gradients.less src/assets/less/bootstrap-3.2.0/mixins/grid-framework.less src/assets/less/bootstrap-3.2.0/mixins/grid.less src/assets/less/bootstrap-3.2.0/mixins/hide-text.less src/assets/less/bootstrap-3.2.0/mixins/image.less src/assets/less/bootstrap-3.2.0/mixins/labels.less src/assets/less/bootstrap-3.2.0/mixins/list-group.less src/assets/less/bootstrap-3.2.0/mixins/nav-divider.less src/assets/less/bootstrap-3.2.0/mixins/nav-vertical-align.less src/assets/less/bootstrap-3.2.0/mixins/opacity.less src/assets/less/bootstrap-3.2.0/mixins/pagination.less src/assets/less/bootstrap-3.2.0/mixins/panels.less src/assets/less/bootstrap-3.2.0/mixins/progress-bar.less src/assets/less/bootstrap-3.2.0/mixins/reset-filter.less src/assets/less/bootstrap-3.2.0/mixins/resize.less src/assets/less/bootstrap-3.2.0/mixins/responsive-visibility.less src/assets/less/bootstrap-3.2.0/mixins/size.less src/assets/less/bootstrap-3.2.0/mixins/tab-focus.less src/assets/less/bootstrap-3.2.0/mixins/table-row.less src/assets/less/bootstrap-3.2.0/mixins/text-emphasis.less src/assets/less/bootstrap-3.2.0/mixins/text-overflow.less src/assets/less/bootstrap-3.2.0/mixins/vendor-prefixes.less src/assets/less/site/banner-ad.less src/assets/less/site/bsap-ad.less src/assets/less/site/example-rating.less src/assets/less/site/feature-list.less src/assets/less/site/fontawesome-icon-list.less src/assets/less/site/footer.less src/assets/less/site/fusion-ad.less src/assets/less/site/jumbotron-carousel.less src/assets/less/site/layout.less src/assets/less/site/lazy.less src/assets/less/site/search.less src/assets/less/site/social-buttons.less src/assets/less/site/stripe-ad.less src/assets/less/site/sumome.less src/assets/less/site/textured-bg.less src/assets/less/site/bootstrap/buttons.less src/assets/less/site/bootstrap/jumbotron.less src/assets/less/site/bootstrap/navbar.less src/assets/less/site/bootstrap/type.less src/assets/less/site/bootstrap/variables.less src/assets/less/site/bootstrap/wells.less src/assets/less/site/responsive/screen-lg.less src/assets/less/site/responsive/screen-md.less src/assets/less/site/responsive/screen-sm.less src/assets/less/site/responsive/screen-xs.less src/_includes/brand-adblock-warning.html src/_includes/brand-license.html src/_includes/footer.html src/_includes/jumbotron-carousel.html src/_includes/jumbotron.html src/_includes/navbar.html src/_includes/new-features.html src/_includes/new-naming.html src/_includes/new-upgrading.html src/_includes/stripe-ad.html src/_includes/stripe-social.html src/_includes/tell-me-thanks.html src/_includes/thanks-to.html src/_includes/why.html src/_includes/ads/fusion.html src/_includes/code/core.less src/_includes/code/core.scss src/_includes/code/license.css src/_includes/community/getting-support.html src/_includes/community/project-milestones.html src/_includes/community/reporting-bugs.html src/_includes/community/requesting-new-icons.html src/_includes/community/submitting-pull-requests.html src/_includes/examples/animated.html src/_includes/examples/basic.html src/_includes/examples/bootstrap.html src/_includes/examples/bordered-pulled.html src/_includes/examples/custom.html src/_includes/examples/fixed-width.html src/_includes/examples/larger.html src/_includes/examples/list.html src/_includes/examples/rotated-flipped.html src/_includes/examples/stacked.html src/_includes/icons/brand.html src/_includes/icons/chart.html src/_includes/icons/currency.html src/_includes/icons/directional.html src/_includes/icons/file-type.html src/_includes/icons/filter.html src/_includes/icons/form-control.html src/_includes/icons/gender.html src/_includes/icons/medical.html src/_includes/icons/new.html src/_includes/icons/payment.html src/_includes/icons/spinner.html src/_includes/icons/text-editor.html src/_includes/icons/transportation.html src/_includes/icons/video-player.html src/_includes/icons/web-application.html src/_includes/tests/rotated-flipped-inside-anchor.html src/_includes/tests/rotated-flipped-inside-btn.html src/_includes/tests/rotated-flipped.html src/_includes/tests/stacked-inside-anchor.html src/_includes/tests/stacked-with-text.html src/_includes/tests/stacked.html src/_layouts/base.html src/_layouts/icon.html src/_plugins/flatten_icon_filters.rb src/_plugins/icon_page_generator.rb src/_plugins/site.rb
lodash@1.2.1 node_modules\lodash js-yaml@2.0.5 node_modules\js-yaml └── esprima@1.0.4 svgo@0.3.7 node_modules\svgo ├── colors@0.6.2 ├── whet.extend@0.9.9 ├── sax@0.5.8 └── coa@0.3.9 (q@0.8.12) argparse@0.1.16 node_modules\argparse ├── underscore@1.7.0 └── underscore.string@2.4.0
javascript
var yesno = require('yesno');
yesno.ask('Dude, Is this groovy or what?',true, function(ok) {
if(ok) {
console.log("Tubular.");
} else {
console.log("Aw, why you gotta be like that?")
}
}, ['groovy'],['or what']);
module.js:318 throw err; ^
"Fatal error: expected true to be false " ~ lol
git clone noflo/noflo . npm install grunt build
Welcome to Git (version 1.9.5-preview20150319)
Run 'git help git' to display the help index.
Run 'git help
phantomjs@1.9.16 install C:\Z\S\4\9\Ax\75\1\node_modules\grunt-mocha-phantomjs\node_modules\phantomjs node install.js
Download already available at C:\Users\ADMINI~1\AppData\Local\Temp\phantomjs\phantomjs-1.9.8-windows.zip Extracting zip contents Removing node_modules\phantomjs\lib\phantom Copying extracted folder C:\Users\ADMINI~1\AppData\Local\Temp\phantomjs\phantomjs-1.9.8-windows.zip-extract-1429584771125\phantomjs-1.9.8-windows -> node_modules\grunt-mocha-phantomjs\node_modules\phantomjs\lib\phantom Writing location.js file grunt-cafe-mocha@0.1.13 node_modules\grunt-cafe-mocha
underscore@1.8.3 node_modules\underscore
fbp@1.1.3 node_modules\fbp
npmlog@0.0.6 node_modules\npmlog └── ansi@0.2.1
eval@0.1.0 node_modules\eval └── require-like@0.1.2
grunt-noflo-manifest@0.1.11 node_modules\grunt-noflo-manifest └── gitgo@0.5.1
chai-json-schema@1.1.0 node_modules\chai-json-schema ├── tv4@1.0.18 └── jsonpointer.js@0.3.0
coffee-script@1.9.2 node_modules\coffee-script
cli@0.6.6 node_modules\cli ├── exit@0.1.2 └── glob@3.2.11 (inherits@2.0.1, minimatch@0.3.0)
chai@1.9.2 node_modules\chai ├── assertion-error@1.0.0 └── deep-eql@0.1.3 (type-detect@0.1.1)
grunt-contrib-coffee@0.11.1 node_modules\grunt-contrib-coffee ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.3, supports-color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0) ├── coffee-script@1.7.1 (mkdirp@0.3.5) └── lodash@2.4.1
grunt-contrib-watch@0.6.1 node_modules\grunt-contrib-watch ├── async@0.2.10 ├── gaze@0.5.1 (globule@0.1.0) ├── tiny-lr-fork@0.0.5 (debug@0.7.4, faye-websocket@0.4.4, noptify@0.0.3, qs@0.5.6) └── lodash@2.4.1
mocha@1.21.5 node_modules\mocha ├── escape-string-regexp@1.0.2 ├── diff@1.0.8 ├── growl@1.8.1 ├── commander@2.3.0 ├── debug@2.0.0 (ms@0.6.2) ├── mkdirp@0.5.0 (minimist@0.0.8) ├── glob@3.2.3 (inherits@2.0.1, graceful-fs@2.0.3, minimatch@0.2.14) └── jade@0.26.3 (commander@0.6.1, mkdirp@0.3.0)
grunt-cli@0.1.13 node_modules\grunt-cli ├── resolve@0.3.1 ├── nopt@1.0.10 (abbrev@1.0.5) └── findup-sync@0.1.3 (glob@3.2.11, lodash@2.4.1)
shell@0.2.10 node_modules\shell ├── pad@0.0.8 ├── optimist@0.6.1 (wordwrap@0.0.2, minimist@0.0.10) └── each@0.5.0 (glob@5.0.5)
read-installed@2.0.7 node_modules\read-installed ├── util-extend@1.0.1 ├── slide@1.1.6 ├── graceful-fs@3.0.6 ├── semver@3.0.1 └── read-package-json@1.3.3 (json-parse-helpfulerror@1.0.3, glob@5.0.5, normalize-package-data@1.0.3)
grunt@0.4.5 node_modules\grunt ├── dateformat@1.0.2-1.2.3 ├── which@1.0.9 ├── eventemitter2@0.4.14 ├── getobject@0.1.0 ├── colors@0.6.2 ├── rimraf@2.2.8 ├── async@0.1.22 ├── grunt-legacy-util@0.2.0 ├── hooker@0.2.3 ├── nopt@1.0.10 (abbrev@1.0.5) ├── exit@0.1.2 ├── minimatch@0.2.14 (sigmund@1.0.0, lru-cache@2.6.1) ├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.3) ├── lodash@0.9.2 ├── coffee-script@1.3.3 ├── underscore.string@2.2.1 ├── iconv-lite@0.2.11 ├── findup-sync@0.1.3 (glob@3.2.11, lodash@2.4.1) ├── grunt-legacy-log@0.1.1 (underscore.string@2.3.3, lodash@2.4.1) └── js-yaml@2.0.5 (argparse@0.1.16, esprima@1.0.4)
grunt-contrib-uglify@0.6.0 node_modules\grunt-contrib-uglify ├── uri-path@0.0.2 ├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.3, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0) ├── lodash@2.4.1 ├── maxmin@1.1.0 (figures@1.3.5, chalk@1.0.0, pretty-bytes@1.0.4, gzip-size@1.0.0) └── uglify-js@2.4.20 (uglify-to-browserify@1.0.2, async@0.2.10, yargs@3.5.4, source-map@0.1.34)
coffeelint@1.9.3 node_modules\coffeelint ├── ignore@2.2.15 ├── resolve@0.6.3 ├── optimist@0.6.1 (wordwrap@0.0.2, minimist@0.0.10) └── glob@4.5.3 (inherits@2.0.1, once@1.3.1, inflight@1.0.4, minimatch@2.0.4)
grunt-coffeelint@0.0.13 node_modules\grunt-coffeelint └── coffeelint-stylish@0.1.2 (text-table@0.2.0, chalk@1.0.0)
grunt-contrib-connect@0.8.0 node_modules\grunt-contrib-connect ├── connect-livereload@0.4.1 ├── open@0.0.5 ├── async@0.9.0 ├── portscanner@0.2.3 (async@0.1.15) └── connect@2.19.6 (parseurl@1.0.1, response-time@2.0.0, escape-html@1.0.1, cookie@0.1.2, pause@0.0.1, cookie-signature@1.0.3, vhost@1.0.0, fresh@0.2.2, qs@0.6.6, basic-auth-connect@1.0.0, on-headers@0.0.0, bytes@1.0.0, serve-favicon@2.0.1, morgan@1.1.1, errorhandler@1.0.2, cookie-parser@1.1.0, connect-timeout@1.1.0, debug@1.0.2, body-parser@1.3.1, method-override@2.0.2, compression@1.0.7, csurf@1.2.1, type-is@1.2.1, multiparty@3.2.8, express-session@1.2.1, serve-static@1.2.3, serve-index@1.1.1)
grunt-mocha-phantomjs@0.6.1 node_modules\grunt-mocha-phantomjs ├── async@0.2.10 ├── lodash@2.4.1 ├── mocha-phantomjs@3.5.3 (commander@2.0.0, mocha@1.20.1) └── phantomjs@1.9.16 (which@1.0.9, progress@1.1.8, kew@0.4.0, request-progress@0.3.1, adm-zip@0.4.4, npmconf@2.1.1, fs-extra@0.16.5, request@2.42.0)
cli-color@0.3.3 node_modules\cli-color ├── d@0.1.1 ├── timers-ext@0.1.0 (next-tick@0.2.2) ├── memoizee@0.3.8 (next-tick@0.2.2, lru-queue@0.1.0, event-emitter@0.3.3, es6-weak-map@0.1.4) └── es5-ext@0.10.6 (es6-symbol@2.0.1, es6-iterator@0.1.3)
grunt-noflo-browser@0.1.9 node_modules\grunt-noflo-browser ├── component-fbp@0.1.0 ├── component-json@0.1.4 ├── component-installer@0.0.8 (debug@0.7.4, batch@0.5.2) ├── coffeeify@0.6.0 (through@2.3.7, convert-source-map@0.3.5, coffee-script@1.7.1) ├── component-builder@0.10.1 (string-to-js@0.0.1, cp@0.1.1, batch@0.2.1, component-require@0.3.1, mkdirp@0.3.4, debug@2.1.3) ├── noflo@0.5.12 ├── component-package@0.0.4 (batch@0.3.2, netrc@0.1.3, superagent-proxy@0.3.1, mkdirp@0.3.4, rimraf@2.1.4, debug@2.1.3, superagent@0.15.7, proxy-agent@1.1.0) ├── browserify@4.2.3 (https-browserify@0.0.0, tty-browserify@0.0.0, builtins@0.0.7, constants-browserify@0.0.1, process@0.7.0, path-browserify@0.0.0, os-browserify@0.1.2, inherits@2.0.1, commondir@0.0.1, stream-browserify@1.0.0, defined@0.0.0, stream-combiner@0.0.4, duplexer@0.1.1, shell-quote@0.0.1, domain-browser@1.1.4, shallow-copy@0.0.1, xtend@3.0.0, deep-equal@0.2.2, querystring-es3@0.2.1, assert@1.1.2, punycode@1.2.4, string_decoder@0.0.1, util@0.10.3, timers-browserify@1.4.0, vm-browserify@0.0.4, events@1.0.2, parents@0.0.3, subarg@0.0.1, console-browserify@1.1.0, readable-stream@1.0.33, http-browserify@1.7.0, url@0.10.3, buffer@2.8.2, through2@1.1.1, resolve@0.7.4, concat-stream@1.4.8, glob@3.2.11, JSONStream@0.8.4, deps-sort@0.1.2, browser-resolve@1.8.2, browser-pack@2.0.1, browserify-zlib@0.1.4, umd@2.1.0, derequire@0.8.0, module-deps@2.1.5, insert-module-globals@6.0.0, syntax-error@1.1.2, crypto-browserify@2.1.10) ├── component@1.1.0 (component-flatten@1.0.1, co@3.1.0, component-consoler@2.0.0, win-fork@1.1.1, mkdirp@0.3.5, component-ls@2.1.0, debug@2.1.3, commander@2.8.0, component-outdated2@1.0.5, component-updater@1.0.5, component-pin@1.0.5, semver@2.3.2, rimraf@2.3.2, superagent@0.17.0, tiny-lr-fork@0.0.5, component-watcher@1.0.3, component-resolver@1.3.0, component-search2@1.1.1, component-remotes@1.2.0, component-build@1.2.2) └── component-coffee@0.1.4 npm WARN peerDependencies The peer dependency coffeelint@^1 included from grunt-coffeelint will no npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly. npm WARN peerDependencies The peer dependency component@>= 0.14 included from component-coffee will no npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
Running "build" task
Running "coffee:libraries" (coffee) task
20 files created.
Running "coffee:libraries_nodejs" (coffee) task
1 files created.
Running "coffee:bin" (coffee) task
1 files created.
Running "coffee:spec" (coffee) task
14 files created.
Running "noflo_manifest:update" (noflo_manifest) task File "package.json" updated. File "component.json" updated.
Running "noflo_browser:build" (noflo_browser) task install bergie/emitter@master install jashkenas/underscore@master install noflo/fbp@master File "browser/noflo.js" built.
Running "uglify:noflo" (uglify) task
1 file created.
Done, without errors.
x Running "test" task
Running "coffeelint:libraries" (coffeelint) task
src/lib/ArrayPort.coffee line 6 Line exceeds maximum allowed length Length is 85, max is 80 line 98 Unnecessary fat arrow
2 warnings
src/lib/AsyncComponent.coffee line 64 Line exceeds maximum allowed length Length is 104, max is 80
1 warning
src/lib/BasePort.coffee line 37 Line exceeds maximum allowed length Length is 113, max is 80 line 40 Line exceeds maximum allowed length Length is 97, max is 80 line 103 Line exceeds maximum allowed length Length is 95, max is 80 line 107 Unnecessary fat arrow
4 warnings
src/lib/Component.coffee line 41 Line exceeds maximum allowed length Length is 108, max is 80
1 warning
src/lib/ComponentLoader.coffee line 101 Line exceeds maximum allowed length Length is 82, max is 80 line 105 Line exceeds maximum allowed length Length is 106, max is 80 line 143 Line exceeds maximum allowed length Length is 88, max is 80 line 150 Line exceeds maximum allowed length Length is 81, max is 80 line 230 Line exceeds maximum allowed length Length is 94, max is 80 line 234 Line exceeds maximum allowed length Length is 87, max is 80
6 warnings
src/lib/Graph.coffee line 449 Line exceeds maximum allowed length Length is 127, max is 80 line 470 Line exceeds maximum allowed length Length is 87, max is 80 line 510 Line exceeds maximum allowed length Length is 112, max is 80 line 511 Line exceeds maximum allowed length Length is 89, max is 80 line 517 Line exceeds maximum allowed length Length is 113, max is 80 line 518 Line exceeds maximum allowed length Length is 89, max is 80 line 678 Line exceeds maximum allowed length Length is 148, max is 80 line 681 Line exceeds maximum allowed length Length is 190, max is 80 line 791 Line exceeds maximum allowed length Length is 112, max is 80 line 793 Line exceeds maximum allowed length Length is 91, max is 80 line 796 Line exceeds maximum allowed length Length is 159, max is 80 line 798 Line exceeds maximum allowed length Length is 120, max is 80 line 906 Line exceeds maximum allowed length Length is 90, max is 80
13 warnings
src/lib/Helpers.coffee line 246 Line exceeds maximum allowed length Length is 83, max is 80 line 294 Line exceeds maximum allowed length Length is 93, max is 80 line 302 Line exceeds maximum allowed length Length is 102, max is 80 line 305 Line exceeds maximum allowed length Length is 120, max is 80 line 306 Line exceeds maximum allowed length Length is 102, max is 80 line 321 Line exceeds maximum allowed length Length is 87, max is 80 line 326 Line exceeds maximum allowed length Length is 91, max is 80 line 336 Line exceeds maximum allowed length Length is 101, max is 80 line 363 Line exceeds maximum allowed length Length is 81, max is 80 line 364 Line exceeds maximum allowed length Length is 85, max is 80 line 385 Line exceeds maximum allowed length Length is 123, max is 80 line 388 Line exceeds maximum allowed length Length is 88, max is 80 line 396 Line exceeds maximum allowed length Length is 81, max is 80 line 406 Line exceeds maximum allowed length Length is 95, max is 80 line 407 Line exceeds maximum allowed length Length is 99, max is 80 line 431 Line exceeds maximum allowed length Length is 82, max is 80 line 443 Line exceeds maximum allowed length Length is 111, max is 80 line 450 Line exceeds maximum allowed length Length is 86, max is 80 line 471 Line exceeds maximum allowed length Length is 95, max is 80 line 498 Line exceeds maximum allowed length Length is 83, max is 80 line 558 Line exceeds maximum allowed length Length is 90, max is 80
21 warnings
src/lib/InPort.coffee line 89 Line exceeds maximum allowed length Length is 84, max is 80
1 warning
src/lib/InternalSocket.coffee line 48 Line exceeds maximum allowed length Length is 81, max is 80 line 84 Line exceeds maximum allowed length Length is 86, max is 80
2 warnings
src/lib/Journal.coffee line 19 Line exceeds maximum allowed length Length is 84, max is 80 line 20 Line exceeds maximum allowed length Length is 88, max is 80 line 21 Line exceeds maximum allowed length Length is 92, max is 80 line 79 Line exceeds maximum allowed length Length is 97, max is 80 line 83 Line exceeds maximum allowed length Length is 83, max is 80 line 98 Line exceeds maximum allowed length Length is 107, max is 80 line 118 Line exceeds maximum allowed length Length is 82, max is 80 line 124 Line exceeds maximum allowed length Length is 99, max is 80 line 142 Line exceeds maximum allowed length Length is 89, max is 80 line 156 Line exceeds maximum allowed length Length is 83, max is 80 line 164 Line exceeds maximum allowed length Length is 84, max is 80 line 176 Line exceeds maximum allowed length Length is 81, max is 80 line 203 Line exceeds maximum allowed length Length is 85, max is 80 line 204 Line exceeds maximum allowed length Length is 87, max is 80 line 205 Line exceeds maximum allowed length Length is 93, max is 80 line 206 Line exceeds maximum allowed length Length is 127, max is 80 line 215 Line exceeds maximum allowed length Length is 89, max is 80 line 216 Line exceeds maximum allowed length Length is 97, max is 80 line 219 Line exceeds maximum allowed length Length is 91, max is 80 line 220 Line exceeds maximum allowed length Length is 106, max is 80 line 223 Line exceeds maximum allowed length Length is 93, max is 80 line 232 Line exceeds maximum allowed length Length is 85, max is 80 line 233 Line exceeds maximum allowed length Length is 90, max is 80 line 234 Line exceeds maximum allowed length Length is 90, max is 80 line 235 Line exceeds maximum allowed length Length is 127, max is 80 line 237 Line exceeds maximum allowed length Length is 83, max is 80 line 244 Line exceeds maximum allowed length Length is 89, max is 80 line 246 Line exceeds maximum allowed length Length is 100, max is 80 line 248 Line exceeds maximum allowed length Length is 91, max is 80 line 250 Line exceeds maximum allowed length Length is 102, max is 80 line 252 Line exceeds maximum allowed length Length is 93, max is 80 line 311 Line exceeds maximum allowed length Length is 85, max is 80
32 warnings
src/lib/Network.coffee line 58 Line exceeds maximum allowed length Length is 104, max is 80 line 118 Line exceeds maximum allowed length Length is 88, max is 80 line 215 Line exceeds maximum allowed length Length is 90, max is 80 line 233 Line exceeds maximum allowed length Length is 98, max is 80 line 245 Line exceeds maximum allowed length Length is 97, max is 80 line 278 Unnecessary fat arrow line 281 Unnecessary fat arrow line 284 Unnecessary fat arrow line 289 Unnecessary fat arrow line 292 Unnecessary fat arrow line 295 Unnecessary fat arrow line 298 Unnecessary fat arrow line 409 Line exceeds maximum allowed length Length is 101, max is 80 line 410 Line exceeds maximum allowed length Length is 83, max is 80 line 412 Line exceeds maximum allowed length Length is 118, max is 80 line 413 Line exceeds maximum allowed length Length is 92, max is 80 line 428 Line exceeds maximum allowed length Length is 89, max is 80 line 431 Line exceeds maximum allowed length Length is 93, max is 80 line 453 Line exceeds maximum allowed length Length is 82, max is 80 line 478 Line exceeds maximum allowed length Length is 115, max is 80 line 479 Line exceeds maximum allowed length Length is 83, max is 80 line 503 Line exceeds maximum allowed length Length is 104, max is 80 line 527 Line exceeds maximum allowed length Length is 93, max is 80
23 warnings
src/lib/NoFlo.coffee line 6 Line exceeds maximum allowed length Length is 86, max is 80 line 32 Line exceeds maximum allowed length Length is 87, max is 80 line 38 Line exceeds maximum allowed length Length is 84, max is 80 line 41 Line exceeds maximum allowed length Length is 83, max is 80 line 45 Line exceeds maximum allowed length Length is 83, max is 80 line 46 Line exceeds maximum allowed length Length is 86, max is 80 line 60 Line exceeds maximum allowed length Length is 87, max is 80 line 78 Line exceeds maximum allowed length Length is 81, max is 80 line 84 Line exceeds maximum allowed length Length is 87, max is 80 line 85 Line exceeds maximum allowed length Length is 84, max is 80 line 91 Line exceeds maximum allowed length Length is 84, max is 80 line 92 Line exceeds maximum allowed length Length is 88, max is 80 line 129 Line exceeds maximum allowed length Length is 97, max is 80 line 134 Line contains a trailing semicolon
14 warnings
src/lib/Platform.coffee line 7 Line exceeds maximum allowed length Length is 96, max is 80
1 warning
src/lib/Port.coffee line 97 Unnecessary fat arrow
1 warning
src/lib/Ports.coffee line 24 Line exceeds maximum allowed length Length is 124, max is 80
1 warning
src/lib/shell.coffee line 96 Line exceeds maximum allowed length Length is 96, max is 80 line 100 Line exceeds maximum allowed length Length is 102, max is 80 line 103 Line exceeds maximum allowed length Length is 81, max is 80 line 110 Line exceeds maximum allowed length Length is 81, max is 80 line 167 Line exceeds maximum allowed length Length is 83, max is 80
5 warnings
Running "coffeelint:components" (coffeelint) task
src/components/Graph.coffee line 1 Line exceeds maximum allowed length Length is 100, max is 80 line 17 Line exceeds maximum allowed length Length is 84, max is 80 line 38 Line exceeds maximum allowed length Length is 94, max is 80 line 92 Line exceeds maximum allowed length Length is 98, max is 80 line 110 Line exceeds maximum allowed length Length is 99, max is 80 line 118 Line exceeds maximum allowed length Length is 104, max is 80
6 warnings
Running "noflo_manifest:update" (noflo_manifest) task File "package.json" updated. File "component.json" updated.
Running "coffee:libraries" (coffee) task
20 files created.
Running "coffee:libraries_nodejs" (coffee) task
1 files created.
Running "coffee:bin" (coffee) task
1 files created.
Running "coffee:spec" (coffee) task
14 files created.
Running "cafemocha:nodejs" (cafemocha) task
Legacy ArrayPort
Untyped ArrayPort instance
✔ should be of type "all"
ArrayPort instance
✔ should retain the given type
without attached socket
✔ should not be attached initially
✔ should allow connections
✔ should not be connected initially
✔ should not contain a socket initially
✔ should not allow connecting
✔ should not allow beginning groups
✔ should not allow sending data
✔ should not allow ending groups
✔ should not allow disconnecting
with attached socket
✔ should emit an event
✔ should be marked as attached
✔ should still allow more connections
✔ should not be connected initially
✔ should have a reference to the socket
✔ should allow other sockets to be attached
✔ should emit an event on detaching
✔ should not be attached any longer
✔ should not contain the removed socket any longer
Input ArrayPort
✔ should emit connection events
✔ should be connected after that
✔ should emit begin group events
✔ should emit data events
✔ should emit end group events
✔ should emit disconnection events
✔ should not be connected after that
✔ should connect automatically when sending
Input ArrayPort with specified index
✔ shouldn't be attached initially
✔ should emit attaching events
✔ should be attached after that
✔ shouldn't have other indexes attached after that
✔ should emit connection events
✔ should be connected after that
✔ shouldn't have other indexes connected after that
✔ should emit begin group events
✔ should emit data events
✔ should emit end group events
✔ should emit disconnection events
✔ should not be connected after that
✔ should connect automatically when sending
✔ should emit attaching events
✔ shouldn't be attached after that
Output ArrayPort
✔ should connect the socket
✔ should begin groups on the socket
✔ should send data to the socket
✔ should end groups on the socket
✔ should disconnect the socket
✔ should connect automatically when sending
AsyncComponent with missing ports
✔ should throw an error on instantiation when no IN defined
✔ should throw an error on instantion when no OUT defined
AsyncComponent without a doAsync method
✔ should throw an error if there is no connection to the ERROR port
✔ should send an error to the ERROR port if connected
✔ should send groups and error to the ERROR port if connected
Implemented AsyncComponent ✔ should send load information and packets in correct order
Component
with required ports
✔ should throw an error upon sending packet to an unattached required port
✔ should be cool with an attached port
with component creation shorthand
✔ should make component creation easy
✔ should throw errors if there is no error port
✔ should throw errors if there is a non-attached error port
✔ should not throw errors if there is a non-required error port
✔ should send errors if there is a connected error port
defining ports with invalid names
✔ should throw an error with uppercase letters in inport
✔ should throw an error with uppercase letters in outport
✔ should throw an error with special characters in inport
starting a component
✔ should flag the component as started
shutting down a component
✔ should flag the component as not started
ComponentLoader with no external packages installed
✔ should initially know of no components
✔ should not initially require revalidation
✔ should not initially be ready
✔ should not initially be processing
✔ should not have any packages in the checked list
✔ should be able to read a list of components
after listing components
✔ should have the Graph component registered
loading the Graph component
✔ should be able to load the component
✔ should contain input ports
✔ should have "on" method on the input port
✔ it should know that Graph is a subgraph
✔ should know the description for the Graph
✔ should be able to provide an icon for the Graph
loading the Graph component
✔ should be able to load the component
✔ should have a reference to the Component Loader's baseDir
loading a component
✔ should return an error on an invalid component type
register a component at runtime
✔ should be available in the components list
✔ should be able to load the component
✔ should have the correct ports
✔ should have inherited its icon from the library
✔ should emit an event on icon change
✔ new instances should still contain the original icon
✔ after setting an icon for the Component class, new instances should have that
✔ should not affect the original instance
reading sources
✔ should be able to provide source code for a component
✔ should return an error for missing components
✔ should return an error for non-file components
writing sources
with working code
✔ should be able to set the source
✔ should be a loadable component
with non-working code
✔ should be able to set the source
[Error: Component foo/NotWorking not available with base C:\Z\S\4\9\Ax\75\1] undefined
✔ should not be a loadable component
Unnamed graph instance ✔ should have an empty name
Graph
with new instance
✔ should get a name from constructor
✔ should have no nodes initially
✔ should have no edges initially
✔ should have no initializers initially
✔ should have no exports initially
New node
✔ should emit an event
✔ should be in graph's list of nodes
✔ should be accessible via the getter
✔ should have empty metadata
✔ should be available in the JSON export
✔ removing should emit an event
✔ should not be available after removal
New edge
✔ should emit an event
✔ should add an edge
✔ should refuse to add a duplicate edge
New edge with index
✔ should emit an event
✔ should add an edge
loaded from JSON
✔ should produce a Graph
✔ should have a name
✔ should have graph metadata intact
✔ should produce same JSON when serialized
✔ should allow modifying graph metadata
✔ should contain four nodes
✔ the first Node should have its metadata intact
✔ should allow modifying node metadata
✔ should contain two connections
✔ the first Edge should have its metadata intact
✔ should allow modifying edge metadata
✔ should contain four IIPs
✔ should contain one published inport
✔ should contain one published outport
✔ should keep the output export metadata intact
✔ should contain two groups
✔ should allow modifying group metadata
✔ should allow renaming groups
renaming a node
✔ should emit an event
✔ should be available with the new name
✔ shouldn't be available with the old name
✔ should have the edge still going from it
✔ should still be exported
✔ should still be grouped
✔ shouldn't be have edges with the old name
✔ should have the IIP still going to it
✔ shouldn't have IIPs going to the old name
✔ shouldn't be have export going to the old name
✔ shouldn't be grouped with the old name
renaming an inport
✔ should emit an event
renaming an outport
✔ should emit an event
removing a node
✔ should emit an event
✔ shouldn't have edges left behind
✔ shouldn't have IIPs left behind
✔ shouldn't have exports left behind
✔ shouldn't be grouped
✔ shouldn't affect other groups
with multiple connected ArrayPorts
✔ should contain four nodes
✔ should contain four edges
✔ should allow a specific edge to be removed
✔ shouldn't contain the removed connection from Split1
✔ should still contain the other connection from Split1
with an Initial Information Packet
✔ should contain one node
✔ should contain no edges
✔ should contain one IIP
on removing that IIP
✔ should emit a removeInitial event
✔ should contain no IIPs
with an Inport Initial Information Packet
✔ should contain one node
✔ should contain no edges
✔ should contain one IIP for the correct node
on removing that IIP
✔ should emit a removeInitial event
✔ should contain no IIPs
on adding IIP for a non-existent inport
✔ should not add any IIP
with an indexed Inport Initial Information Packet
✔ should contain one node
✔ should contain no edges
✔ should contain one IIP for the correct node
on removing that IIP
✔ should emit a removeInitial event
✔ should contain no IIPs
on adding IIP for a non-existent inport
✔ should not add any IIP
with no nodes
✔ should not allow adding edges
✔ should not allow adding IIPs
Legacy exports loaded via JSON
✔ should produce a Graph
✔ should have two legacy exports
✔ should fix the case of the process key
Component traits
MapComponent
✔ should pass data to the callback
✔ should pass groups to the callback
✔ should send groups and disconnect through
WirePattern
when grouping by packet groups
✔ should pass data and groups to the callback
✔ should work without a group provided
✔ should process inputs for different groups independently with group: true
✔ should support asynchronous handlers
✔ should not forward groups if forwarding is off
✔ should forward groups from a specific port only
✔ should forward groups from selected ports only
when this
context is important
✔ should correctly bind component to this
context
✔ should correctly bind component to this
context in async mode
when in async mode and packet order matters
✔ should preserve input order at the output
✔ should support complex substreams
when grouping by field
✔ should match objects by specific field
when there are multiple output routes
✔ should send output to one or more of them
when there are parameter ports
✔ should wait for required params without default value
✔ should work for async procs too
✔ should reset state if shutdown() is called
✔ should drop premature data if configured to do so
without output ports
✔ should be fine still
when data processing is not possible at the moment
✔ should be able to postpone it until next tuple of data
✔ should be able to postpone and retry after timeout
✔ should be able to postpone it and resume when needed
with many inputs and groups
✔ should handle mixed flow well
for batch processing
✔ should process sequences of packets separated by disconnects
for batch processing with groups
✔ should wrap entire sequence with groups
with addressable ports
✔ should wait for all param and any data port values (default)
✔ should wait for any param and all data values
✔ should wait for all indexes of a single input
✔ should behave normally with string output from another component
when grouping requests
✔ should group requests by outer UUID group
1) should collect garbage every N requests
✔ should be able to drop a request explicitly
MultiError
with simple sync processes
✔ should support multiple customized error messages
✔ should pass if everything is correct
✔ should handle fatals and runtimes normally
with async processes and groups
✔ should support multiple error messages and groups
✔ should pass if everything is correct
✔ should handle fatals and runtimes normally
✔ should reset state if component is shut down
Inport Port
with default options
✔ should be of datatype "all"
✔ should not be required
✔ should not be addressable
✔ should not be buffered
with custom type
✔ should retain the type
without attached sockets
✔ should not be attached
✔ should allow attaching
✔ should not be connected initially
✔ should not contain a socket initially
with processing function called with port as context
✔ should set context to port itself
with default value
✔ should send the default value as a packet, though on next tick after initialization
✔ should send the default value before IIP
with options stored in port
✔ should store all provided options in port, whether we expect it or not
with data type information
✔ should accept a 'all' data type
✔ should accept a 'string' data type
✔ should accept a 'number' data type
✔ should accept a 'int' data type
✔ should accept a 'object' data type
✔ should accept a 'array' data type
✔ should NOT accept a 'not' data type
✔ should NOT accept a 'valie' data type
✔ should NOT accept a 'data' data type
✔ should NOT accept a 'types' data type
with TYPE (i.e. ontology) information
✔ should be a URL or MIME
with buffering
✔ should buffer incoming packets until receive()
d
✔ should be able to tell the number of contained data packets
✔ should return undefined when buffer is empty
✔ shouldn't expose the receive method without buffering
with accepted enumerated values
✔ should accept certain values
✔ should throw an error if value is not accepted
with processing shorthand
✔ should create a port with a callback
✔ should also accept metadata (i.e. options) when provided
Journal
connected to initialized graph
✔ should have just the initial transaction
following basic graph changes
✔ should create one transaction per change
pretty printing
✔ should be human readable
jumping to revision
✔ should change the graph
linear undo/redo
✔ undo should restore previous revision
✔ redo should apply the same change again
✔ undo should also work multiple revisions back
undo/redo of metadata changes
✔ adding group
✔ undoing group add
✔ redoing group add
✔ changing group metadata adds revision
✔ undoing group metadata change
✔ redoing group metadata change
✔ setting node metadata
✔ undoing set node metadata
✔ redoing set node metadata
Journalling of graph merges
G -> B
✔ G starts out as A
✔ G and B starts out different
✔ merge should make G equivalent to B
✔ undoing merge should make G equivalent to A again
JSON Schema validator
✔ should validate the http example graph
✔ should validate the linecount example graph
NoFlo Network
with an empty graph
✔ should initially be marked as stopped
✔ should initially have no processes
✔ should initially have to connections
✔ should initially have no IIPs
✔ should have reference to the graph
✔ should know its baseDir
✔ should have a ComponentLoader
✔ should have transmitted the baseDir to the Component Loader
✔ should have an uptime
with new node
✔ should contain the node
✔ should have transmitted the node metadata to the process
✔ should not contain the node after removal
with a simple graph
✔ should contain two processes
✔ the ports of the processes should know the node names
✔ should contain one connection
✔ should call callback when receiving data
once started
✔ should be marked as started
with a renamed node
✔ should have the process in a new location
✔ shouldn't have the process in the old location
✔ should have informed the ports of their new node name
with process icon change
✔ should emit an icon event
once stopped
✔ should be marked as stopped
with nodes containing default ports
✔ should send default values to nodes without an edge
✔ should not send default values to nodes with an edge
✔ should not send default values to nodes with IIP
Nodes are added first, then edges, then initializers (i.e. IIPs), and in order of definition order within each
✔ should add nodes, edges, and initials, in that order
with an existing IIP
✔ should call the Callback with the original IIP value
✔ should allow removing the IIPs
✔ new IIPs to replace original ones should work correctly
on stopping
✔ processes should be running before the stop call
✔ should emit the end event
✔ should have called the shutdown method of each process
with a very large network
✔ should be able to connect without errors
NoFlo interface ✔ should be able to tell whether it is running on browser
Outport Port
with addressable ports
✔ should be able to send to a specific port
✔ should throw an error when sent data without address
✔ should throw an error when a specific port is requested with non-addressable port
✔ should give correct port index when detaching a connection
with caching ports
✔ should repeat the previously sent value on attach event
✔ should support addressable ports
Legacy Port
Untyped port instance
✔ should be of type "all"
Port instance
initially
✔ should retain the given type
✔ should not have a name
✔ should not have a node name
✔ should return "Port" as identifier
with given name and node
✔ should return correct ID
without attached socket
✔ should not be attached initially
✔ should allow a connection
✔ should not be connected initially
✔ should not contain a socket initially
✔ should not allow connecting
✔ should not allow beginning groups
✔ should not allow sending data
✔ should not allow ending groups
✔ should not allow disconnecting
with attached socket
✔ should emit an event
✔ should be marked as attached
✔ should not be connected initially
✔ should have a reference to the socket
✔ should allow other sockets to be attached
✔ should emit an event on detaching
✔ should still be attached
✔ should not be attached any longer
✔ should not contain a socket any longer
Input port
✔ should emit connection events
✔ should be connected after that
✔ should emit begin group events
✔ should emit data events
✔ should emit end group events
✔ should emit disconnection events
✔ should not be connected after that
✔ should connect automatically when sending
Output port
✔ should connect the socket
✔ should begin groups on the socket
✔ should send data to the socket
✔ should end groups on the socket
✔ should disconnect the socket
✔ should connect automatically when sending
Graph component
initially
✔ should be ready
✔ should not contain a network
✔ should not have a baseDir
✔ should only have the graph inport
with JSON graph definition
✔ should emit a ready event after network has been loaded
✔ should expose available ports
✔ should update description from the graph
✔ should expose only exported ports when they exist
✔ should be able to run the graph
with a Graph instance
✔ should emit a ready event after network has been loaded
✔ should expose available ports
✔ should be able to run the graph
with a FBP file with INPORTs and OUTPORTs
2) should emit a ready event after network has been loaded
3) should expose available ports
4) should be able to run the graph
with a FBP file with legacy EXPORTS
5) should emit a ready event after network has been loaded
6) should expose available ports
7) should have disambiguated the exported ports
8) should be able to run the graph
when a subgraph is used as a component
Fatal error: expected true to be false
module.js:318 throw err; ^
package.json.bin: {tool1:'path',tool2:'path'}
not sure what % of modules would have 0,1,2,3,+ bin tools, but what seems to be misisng is a doc string, i guess many times running the tool with...
like the switch for version info there is no one standard "help switch" (like "man" on unix) but running the common ones and selecting the one with the longest console output may suffice for 98% of modules offering console/CLI command line tools,
fp=require('path').resolve(dir,package.json.bin.toolName)
output=require('child_process').execSync(fp,{cwd:dir})
3 2 = bin/capnpc-js
1 nfy = bin/nfy
1 redis-migrate = ./bin/redis-migrate
1 buddy = ./bin/buddy
1 pjs = ./bin/pjs
1 js-inspector = ./bin/js-inspector
1 jsinspect = ./bin/jsinspect
1 svn-graphs = cli.js
1 lesscap = cli.js
1 faggot.io = cli.js
2 faggot-io-harvester = ./bin/faggot-io-harvester.js
1 logsack = lib/cli
1 jquery-cli2 = lib/cli
1 figs = ./figs.js
0 1 dispatch = ./bin/dispatch.js
1 pbo = ./bin/pbo.js
1 catalyst = ./bin/catalyst.js
0 1 lzma.js = bin/lzma.js
1 gif_blend = blend.js
1 arteplus7 = bin/arteplus7
1 remarkedup = ./bin/remarkedup.js
1 rrest = ./bin/rrest
machinepack____
pkgcloud-cli____
jline____
treeline____
gittern____
although the set i'm looking at is missing 20,000 (or a couple of months worth of new modules) some of which may have a exactly 12 CLI tools
▄koa-minify▄1141.36▄[597|koa-minify▄bin/harmony.js koa-minify] ▄jsvim▄2265.10▄[0|index.js▄node index.js] ▄npm-keyword-search▄2412.14▄[0|.\index.js▄node ./index.js] ▄pelias-import▄3379.5▄[0|bin\cli_import_tool.js▄node bin/cli_import_tool.js] ▄treetop▄8251.2▄[0|index.js▄node index.js] ▄jirc▄12454.2▄[0|.\jirc.js▄node ./jirc.js] ▄srs▄21526.1▄[0|.\srs.js▄node ./srs.js]
LOL C:\Users\Administrator\Library\Preferences\com.apple.LaunchServices.plist
┌─┘N1005.347└──dominictarr ├─┤hipster├────────────────┼54┼── ├─┤hipster├────────────────┼─○┼── ├─┤hip├──────────────────┼─◘┼── "" Okay, so today I wrote a text editor in node.js and named it "hipster". Because I am an asshole. (and no one had already used the name for something more stupid) "" ~ dominictarr
┌─┘N1022.181└──tootallnate──────────────────────────────────────────────────────────────────────────────┐ ├─┤drone-joystick├─────────┼43┼──Control AR.Drones using any SDL-compatible Joystick (PS3 Sixaxis, etc.) ├─┤drone-joystick├─────────┼─○┼── │ ├─┤up├─────────────────────┼72┼──cloudup command-line executable ├─┤up├─────────────────────┼─○┼── ├─┤up-streams├─────────────┼─◘┼── ├─┤up-config├──────────────┼─◘┼── ├─┤up-copy├────────────────┼─◘┼── ├─┤up-open├────────────────┼─◘┼── └───────────────────────────────────────────────────────────────────────────────────────────────────────┘
usage: bug-me [
-h, -?, --help show this help
-r, --reproducible show issues with reproduction steps
-c, --consensus show issues that have consensus on a solution
-d, --duplicates show issues that have duplicates
-w, --wrong-repo show issues that are in the wrong repo
-f, --is-feature show issues that have been approved as features
by a core team member
-v, --version <ver> show issues that have been reproduced
against version <ver>, with acceptable values
of "0.10" or "0.11"
fs.existsSync
.and has been for a while
352 ꆱʳᵉˡᵒᵃᵈ
◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡◠◡
Our site uses cookies, which our Oompa Loompas munch on to keep our site running.
from https://taiga.io just as we have
hip-hop, and
lit-hop
(baba brinkman rapping to shakespeare and chaucer, as below) we also have
chip-hop
https://www.youtube.com/watch?v=q-k2y5NooyE Mc Plus+ - Man Vs Machine
with mc++ and @marak being 2 notable proponents https://github.com/Marak/The-Git-Rap WORLD PREMIER EXCLUSIVE GIT RAP BROUGHT TO YOU BY GITHUB