Resizing frontpage slideshow margins in small
authorLaury GvR <laury@gaslightmedia.com>
Thu, 28 May 2015 19:45:58 +0000 (15:45 -0400)
committerLaury GvR <laury@gaslightmedia.com>
Thu, 28 May 2015 19:45:58 +0000 (15:45 -0400)
npm-debug.log [new file with mode: 0644]

diff --git a/npm-debug.log b/npm-debug.log
new file mode 100644 (file)
index 0000000..ee193cf
--- /dev/null
@@ -0,0 +1,1132 @@
+0 info it worked if it ends with ok
+1 verbose cli [ '/usr/bin/nodejs', '/usr/bin/npm', 'install' ]
+2 info using npm@1.4.21
+3 info using node@v0.10.25
+4 warn package.json EmmetCountyFair@0.0.1 No repository field.
+5 verbose readDependencies using package.json deps
+6 verbose install where, deps [ '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet',
+6 verbose install   [ 'node-sass',
+6 verbose install     'grunt',
+6 verbose install     'grunt-contrib-watch',
+6 verbose install     'grunt-sass',
+6 verbose install     'grunt-contrib-uglify',
+6 verbose install     'grunt-contrib-concat',
+6 verbose install     'grunt-contrib-copy' ] ]
+7 info preinstall EmmetCountyFair@0.0.1
+8 verbose readDependencies using package.json deps
+9 verbose cache add [ 'node-sass@~1.2.3', null ]
+10 verbose cache add name=undefined spec="node-sass@~1.2.3" args=["node-sass@~1.2.3",null]
+11 verbose parsed url { protocol: null,
+11 verbose parsed url   slashes: null,
+11 verbose parsed url   auth: null,
+11 verbose parsed url   host: null,
+11 verbose parsed url   port: null,
+11 verbose parsed url   hostname: null,
+11 verbose parsed url   hash: null,
+11 verbose parsed url   search: null,
+11 verbose parsed url   query: null,
+11 verbose parsed url   pathname: 'node-sass@~1.2.3',
+11 verbose parsed url   path: 'node-sass@~1.2.3',
+11 verbose parsed url   href: 'node-sass@~1.2.3' }
+12 verbose cache add [ 'grunt@~0.4.5', null ]
+13 verbose cache add name=undefined spec="grunt@~0.4.5" args=["grunt@~0.4.5",null]
+14 verbose parsed url { protocol: null,
+14 verbose parsed url   slashes: null,
+14 verbose parsed url   auth: null,
+14 verbose parsed url   host: null,
+14 verbose parsed url   port: null,
+14 verbose parsed url   hostname: null,
+14 verbose parsed url   hash: null,
+14 verbose parsed url   search: null,
+14 verbose parsed url   query: null,
+14 verbose parsed url   pathname: 'grunt@~0.4.5',
+14 verbose parsed url   path: 'grunt@~0.4.5',
+14 verbose parsed url   href: 'grunt@~0.4.5' }
+15 verbose cache add [ 'grunt-sass@~0.17.0', null ]
+16 verbose cache add name=undefined spec="grunt-sass@~0.17.0" args=["grunt-sass@~0.17.0",null]
+17 verbose parsed url { protocol: null,
+17 verbose parsed url   slashes: null,
+17 verbose parsed url   auth: null,
+17 verbose parsed url   host: null,
+17 verbose parsed url   port: null,
+17 verbose parsed url   hostname: null,
+17 verbose parsed url   hash: null,
+17 verbose parsed url   search: null,
+17 verbose parsed url   query: null,
+17 verbose parsed url   pathname: 'grunt-sass@~0.17.0',
+17 verbose parsed url   path: 'grunt-sass@~0.17.0',
+17 verbose parsed url   href: 'grunt-sass@~0.17.0' }
+18 verbose cache add [ 'grunt-contrib-uglify@~0.7.0', null ]
+19 verbose cache add name=undefined spec="grunt-contrib-uglify@~0.7.0" args=["grunt-contrib-uglify@~0.7.0",null]
+20 verbose parsed url { protocol: null,
+20 verbose parsed url   slashes: null,
+20 verbose parsed url   auth: null,
+20 verbose parsed url   host: null,
+20 verbose parsed url   port: null,
+20 verbose parsed url   hostname: null,
+20 verbose parsed url   hash: null,
+20 verbose parsed url   search: null,
+20 verbose parsed url   query: null,
+20 verbose parsed url   pathname: 'grunt-contrib-uglify@~0.7.0',
+20 verbose parsed url   path: 'grunt-contrib-uglify@~0.7.0',
+20 verbose parsed url   href: 'grunt-contrib-uglify@~0.7.0' }
+21 verbose cache add [ 'grunt-contrib-watch@~0.6.1', null ]
+22 verbose cache add name=undefined spec="grunt-contrib-watch@~0.6.1" args=["grunt-contrib-watch@~0.6.1",null]
+23 verbose parsed url { protocol: null,
+23 verbose parsed url   slashes: null,
+23 verbose parsed url   auth: null,
+23 verbose parsed url   host: null,
+23 verbose parsed url   port: null,
+23 verbose parsed url   hostname: null,
+23 verbose parsed url   hash: null,
+23 verbose parsed url   search: null,
+23 verbose parsed url   query: null,
+23 verbose parsed url   pathname: 'grunt-contrib-watch@~0.6.1',
+23 verbose parsed url   path: 'grunt-contrib-watch@~0.6.1',
+23 verbose parsed url   href: 'grunt-contrib-watch@~0.6.1' }
+24 verbose cache add [ 'grunt-contrib-concat@~0.5.0', null ]
+25 verbose cache add name=undefined spec="grunt-contrib-concat@~0.5.0" args=["grunt-contrib-concat@~0.5.0",null]
+26 verbose parsed url { protocol: null,
+26 verbose parsed url   slashes: null,
+26 verbose parsed url   auth: null,
+26 verbose parsed url   host: null,
+26 verbose parsed url   port: null,
+26 verbose parsed url   hostname: null,
+26 verbose parsed url   hash: null,
+26 verbose parsed url   search: null,
+26 verbose parsed url   query: null,
+26 verbose parsed url   pathname: 'grunt-contrib-concat@~0.5.0',
+26 verbose parsed url   path: 'grunt-contrib-concat@~0.5.0',
+26 verbose parsed url   href: 'grunt-contrib-concat@~0.5.0' }
+27 verbose cache add name="node-sass" spec="~1.2.3" args=["node-sass","~1.2.3"]
+28 verbose parsed url { protocol: null,
+28 verbose parsed url   slashes: null,
+28 verbose parsed url   auth: null,
+28 verbose parsed url   host: null,
+28 verbose parsed url   port: null,
+28 verbose parsed url   hostname: null,
+28 verbose parsed url   hash: null,
+28 verbose parsed url   search: null,
+28 verbose parsed url   query: null,
+28 verbose parsed url   pathname: '~1.2.3',
+28 verbose parsed url   path: '~1.2.3',
+28 verbose parsed url   href: '~1.2.3' }
+29 verbose addNamed [ 'node-sass', '~1.2.3' ]
+30 verbose addNamed [ null, '>=1.2.3-0 <1.3.0-0' ]
+31 verbose cache add [ 'grunt-contrib-copy@~0.7.0', null ]
+32 verbose cache add name=undefined spec="grunt-contrib-copy@~0.7.0" args=["grunt-contrib-copy@~0.7.0",null]
+33 verbose parsed url { protocol: null,
+33 verbose parsed url   slashes: null,
+33 verbose parsed url   auth: null,
+33 verbose parsed url   host: null,
+33 verbose parsed url   port: null,
+33 verbose parsed url   hostname: null,
+33 verbose parsed url   hash: null,
+33 verbose parsed url   search: null,
+33 verbose parsed url   query: null,
+33 verbose parsed url   pathname: 'grunt-contrib-copy@~0.7.0',
+33 verbose parsed url   path: 'grunt-contrib-copy@~0.7.0',
+33 verbose parsed url   href: 'grunt-contrib-copy@~0.7.0' }
+34 verbose cache add name="grunt" spec="~0.4.5" args=["grunt","~0.4.5"]
+35 verbose parsed url { protocol: null,
+35 verbose parsed url   slashes: null,
+35 verbose parsed url   auth: null,
+35 verbose parsed url   host: null,
+35 verbose parsed url   port: null,
+35 verbose parsed url   hostname: null,
+35 verbose parsed url   hash: null,
+35 verbose parsed url   search: null,
+35 verbose parsed url   query: null,
+35 verbose parsed url   pathname: '~0.4.5',
+35 verbose parsed url   path: '~0.4.5',
+35 verbose parsed url   href: '~0.4.5' }
+36 verbose addNamed [ 'grunt', '~0.4.5' ]
+37 verbose addNamed [ null, '>=0.4.5-0 <0.5.0-0' ]
+38 verbose cache add name="grunt-contrib-concat" spec="~0.5.0" args=["grunt-contrib-concat","~0.5.0"]
+39 verbose parsed url { protocol: null,
+39 verbose parsed url   slashes: null,
+39 verbose parsed url   auth: null,
+39 verbose parsed url   host: null,
+39 verbose parsed url   port: null,
+39 verbose parsed url   hostname: null,
+39 verbose parsed url   hash: null,
+39 verbose parsed url   search: null,
+39 verbose parsed url   query: null,
+39 verbose parsed url   pathname: '~0.5.0',
+39 verbose parsed url   path: '~0.5.0',
+39 verbose parsed url   href: '~0.5.0' }
+40 verbose addNamed [ 'grunt-contrib-concat', '~0.5.0' ]
+41 verbose addNamed [ null, '>=0.5.0-0 <0.6.0-0' ]
+42 silly lockFile 678e7a95-node-sass-1-2-3 node-sass@~1.2.3
+43 verbose lock node-sass@~1.2.3 /home/steve/.npm/678e7a95-node-sass-1-2-3.lock
+44 silly lockFile 240974bb-grunt-0-4-5 grunt@~0.4.5
+45 verbose lock grunt@~0.4.5 /home/steve/.npm/240974bb-grunt-0-4-5.lock
+46 silly lockFile ab641ed0-grunt-contrib-concat-0-5-0 grunt-contrib-concat@~0.5.0
+47 verbose lock grunt-contrib-concat@~0.5.0 /home/steve/.npm/ab641ed0-grunt-contrib-concat-0-5-0.lock
+48 verbose cache add name="grunt-sass" spec="~0.17.0" args=["grunt-sass","~0.17.0"]
+49 verbose parsed url { protocol: null,
+49 verbose parsed url   slashes: null,
+49 verbose parsed url   auth: null,
+49 verbose parsed url   host: null,
+49 verbose parsed url   port: null,
+49 verbose parsed url   hostname: null,
+49 verbose parsed url   hash: null,
+49 verbose parsed url   search: null,
+49 verbose parsed url   query: null,
+49 verbose parsed url   pathname: '~0.17.0',
+49 verbose parsed url   path: '~0.17.0',
+49 verbose parsed url   href: '~0.17.0' }
+50 verbose addNamed [ 'grunt-sass', '~0.17.0' ]
+51 verbose addNamed [ null, '>=0.17.0-0 <0.18.0-0' ]
+52 silly lockFile aa90627f-grunt-sass-0-17-0 grunt-sass@~0.17.0
+53 verbose lock grunt-sass@~0.17.0 /home/steve/.npm/aa90627f-grunt-sass-0-17-0.lock
+54 verbose cache add name="grunt-contrib-uglify" spec="~0.7.0" args=["grunt-contrib-uglify","~0.7.0"]
+55 verbose parsed url { protocol: null,
+55 verbose parsed url   slashes: null,
+55 verbose parsed url   auth: null,
+55 verbose parsed url   host: null,
+55 verbose parsed url   port: null,
+55 verbose parsed url   hostname: null,
+55 verbose parsed url   hash: null,
+55 verbose parsed url   search: null,
+55 verbose parsed url   query: null,
+55 verbose parsed url   pathname: '~0.7.0',
+55 verbose parsed url   path: '~0.7.0',
+55 verbose parsed url   href: '~0.7.0' }
+56 verbose addNamed [ 'grunt-contrib-uglify', '~0.7.0' ]
+57 verbose addNamed [ null, '>=0.7.0-0 <0.8.0-0' ]
+58 silly lockFile ed126bab-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@~0.7.0
+59 verbose lock grunt-contrib-uglify@~0.7.0 /home/steve/.npm/ed126bab-grunt-contrib-uglify-0-7-0.lock
+60 verbose cache add name="grunt-contrib-watch" spec="~0.6.1" args=["grunt-contrib-watch","~0.6.1"]
+61 verbose parsed url { protocol: null,
+61 verbose parsed url   slashes: null,
+61 verbose parsed url   auth: null,
+61 verbose parsed url   host: null,
+61 verbose parsed url   port: null,
+61 verbose parsed url   hostname: null,
+61 verbose parsed url   hash: null,
+61 verbose parsed url   search: null,
+61 verbose parsed url   query: null,
+61 verbose parsed url   pathname: '~0.6.1',
+61 verbose parsed url   path: '~0.6.1',
+61 verbose parsed url   href: '~0.6.1' }
+62 verbose addNamed [ 'grunt-contrib-watch', '~0.6.1' ]
+63 verbose addNamed [ null, '>=0.6.1-0 <0.7.0-0' ]
+64 silly lockFile 82ce6ec8-grunt-contrib-watch-0-6-1 grunt-contrib-watch@~0.6.1
+65 verbose lock grunt-contrib-watch@~0.6.1 /home/steve/.npm/82ce6ec8-grunt-contrib-watch-0-6-1.lock
+66 verbose cache add name="grunt-contrib-copy" spec="~0.7.0" args=["grunt-contrib-copy","~0.7.0"]
+67 verbose parsed url { protocol: null,
+67 verbose parsed url   slashes: null,
+67 verbose parsed url   auth: null,
+67 verbose parsed url   host: null,
+67 verbose parsed url   port: null,
+67 verbose parsed url   hostname: null,
+67 verbose parsed url   hash: null,
+67 verbose parsed url   search: null,
+67 verbose parsed url   query: null,
+67 verbose parsed url   pathname: '~0.7.0',
+67 verbose parsed url   path: '~0.7.0',
+67 verbose parsed url   href: '~0.7.0' }
+68 verbose addNamed [ 'grunt-contrib-copy', '~0.7.0' ]
+69 verbose addNamed [ null, '>=0.7.0-0 <0.8.0-0' ]
+70 silly lockFile 20e4a8d9-grunt-contrib-copy-0-7-0 grunt-contrib-copy@~0.7.0
+71 verbose lock grunt-contrib-copy@~0.7.0 /home/steve/.npm/20e4a8d9-grunt-contrib-copy-0-7-0.lock
+72 silly addNameRange { name: 'node-sass',
+72 silly addNameRange   range: '>=1.2.3-0 <1.3.0-0',
+72 silly addNameRange   hasData: false }
+73 silly addNameRange { name: 'grunt', range: '>=0.4.5-0 <0.5.0-0', hasData: false }
+74 silly addNameRange { name: 'grunt-contrib-concat',
+74 silly addNameRange   range: '>=0.5.0-0 <0.6.0-0',
+74 silly addNameRange   hasData: false }
+75 silly addNameRange { name: 'grunt-sass',
+75 silly addNameRange   range: '>=0.17.0-0 <0.18.0-0',
+75 silly addNameRange   hasData: false }
+76 silly addNameRange { name: 'grunt-contrib-uglify',
+76 silly addNameRange   range: '>=0.7.0-0 <0.8.0-0',
+76 silly addNameRange   hasData: false }
+77 silly addNameRange { name: 'grunt-contrib-watch',
+77 silly addNameRange   range: '>=0.6.1-0 <0.7.0-0',
+77 silly addNameRange   hasData: false }
+78 silly addNameRange { name: 'grunt-contrib-copy',
+78 silly addNameRange   range: '>=0.7.0-0 <0.8.0-0',
+78 silly addNameRange   hasData: false }
+79 verbose request where is /node-sass
+80 verbose request registry https://registry.npmjs.org/
+81 verbose request id 7bd5d607c7e4a5af
+82 verbose url raw /node-sass
+83 verbose url resolving [ 'https://registry.npmjs.org/', './node-sass' ]
+84 verbose url resolved https://registry.npmjs.org/node-sass
+85 verbose request where is https://registry.npmjs.org/node-sass
+86 info trying registry request attempt 1 at 11:22:40
+87 verbose etag "1TA53L79KUGNPDOL7483CV8GL"
+88 http GET https://registry.npmjs.org/node-sass
+89 verbose request where is /grunt
+90 verbose request registry https://registry.npmjs.org/
+91 verbose url raw /grunt
+92 verbose url resolving [ 'https://registry.npmjs.org/', './grunt' ]
+93 verbose url resolved https://registry.npmjs.org/grunt
+94 verbose request where is https://registry.npmjs.org/grunt
+95 info trying registry request attempt 1 at 11:22:40
+96 verbose etag "4ICZ2A8J5OHZLNDHFJT84S7HJ"
+97 http GET https://registry.npmjs.org/grunt
+98 verbose request where is /grunt-contrib-concat
+99 verbose request registry https://registry.npmjs.org/
+100 verbose url raw /grunt-contrib-concat
+101 verbose url resolving [ 'https://registry.npmjs.org/', './grunt-contrib-concat' ]
+102 verbose url resolved https://registry.npmjs.org/grunt-contrib-concat
+103 verbose request where is https://registry.npmjs.org/grunt-contrib-concat
+104 info trying registry request attempt 1 at 11:22:40
+105 verbose etag "5YSQRTHHXC6IDBJCIWFWIB07E"
+106 http GET https://registry.npmjs.org/grunt-contrib-concat
+107 verbose request where is /grunt-sass
+108 verbose request registry https://registry.npmjs.org/
+109 verbose url raw /grunt-sass
+110 verbose url resolving [ 'https://registry.npmjs.org/', './grunt-sass' ]
+111 verbose url resolved https://registry.npmjs.org/grunt-sass
+112 verbose request where is https://registry.npmjs.org/grunt-sass
+113 info trying registry request attempt 1 at 11:22:40
+114 verbose etag "96OFTMZX1PGUXNU426QHVOFQ9"
+115 http GET https://registry.npmjs.org/grunt-sass
+116 verbose request where is /grunt-contrib-uglify
+117 verbose request registry https://registry.npmjs.org/
+118 verbose url raw /grunt-contrib-uglify
+119 verbose url resolving [ 'https://registry.npmjs.org/', './grunt-contrib-uglify' ]
+120 verbose url resolved https://registry.npmjs.org/grunt-contrib-uglify
+121 verbose request where is https://registry.npmjs.org/grunt-contrib-uglify
+122 info trying registry request attempt 1 at 11:22:40
+123 verbose etag "CJG62V7I3FJ24P2XCXAHP6PQO"
+124 http GET https://registry.npmjs.org/grunt-contrib-uglify
+125 verbose request where is /grunt-contrib-watch
+126 verbose request registry https://registry.npmjs.org/
+127 verbose url raw /grunt-contrib-watch
+128 verbose url resolving [ 'https://registry.npmjs.org/', './grunt-contrib-watch' ]
+129 verbose url resolved https://registry.npmjs.org/grunt-contrib-watch
+130 verbose request where is https://registry.npmjs.org/grunt-contrib-watch
+131 info trying registry request attempt 1 at 11:22:40
+132 verbose etag "8D5H42W1Y0YNSDVLWB9U0YW70"
+133 http GET https://registry.npmjs.org/grunt-contrib-watch
+134 verbose request where is /grunt-contrib-copy
+135 verbose request registry https://registry.npmjs.org/
+136 verbose url raw /grunt-contrib-copy
+137 verbose url resolving [ 'https://registry.npmjs.org/', './grunt-contrib-copy' ]
+138 verbose url resolved https://registry.npmjs.org/grunt-contrib-copy
+139 verbose request where is https://registry.npmjs.org/grunt-contrib-copy
+140 info trying registry request attempt 1 at 11:22:40
+141 verbose etag "CPVJ8CTW0TGB88YJECPD3PSF0"
+142 http GET https://registry.npmjs.org/grunt-contrib-copy
+143 http 304 https://registry.npmjs.org/grunt
+144 silly registry.get cb [ 304,
+144 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+144 silly registry.get     via: '1.1 varnish',
+144 silly registry.get     'cache-control': 'max-age=60',
+144 silly registry.get     etag: '"4ICZ2A8J5OHZLNDHFJT84S7HJ"',
+144 silly registry.get     age: '29',
+144 silly registry.get     connection: 'keep-alive',
+144 silly registry.get     'x-served-by': 'cache-ord1725-ORD',
+144 silly registry.get     'x-cache': 'HIT',
+144 silly registry.get     'x-cache-hits': '3',
+144 silly registry.get     'x-timer': 'S1432048961.093096,VS0,VE0',
+144 silly registry.get     vary: 'Accept' } ]
+145 verbose etag https://registry.npmjs.org/grunt from cache
+146 http 304 https://registry.npmjs.org/grunt-sass
+147 silly registry.get cb [ 304,
+147 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+147 silly registry.get     via: '1.1 varnish',
+147 silly registry.get     'cache-control': 'max-age=60',
+147 silly registry.get     etag: '"96OFTMZX1PGUXNU426QHVOFQ9"',
+147 silly registry.get     age: '60',
+147 silly registry.get     connection: 'keep-alive',
+147 silly registry.get     'x-served-by': 'cache-ord1729-ORD',
+147 silly registry.get     'x-cache': 'HIT',
+147 silly registry.get     'x-cache-hits': '1',
+147 silly registry.get     'x-timer': 'S1432048961.100358,VS0,VE0',
+147 silly registry.get     vary: 'Accept' } ]
+148 verbose etag https://registry.npmjs.org/grunt-sass from cache
+149 http 304 https://registry.npmjs.org/grunt-contrib-uglify
+150 silly registry.get cb [ 304,
+150 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+150 silly registry.get     via: '1.1 varnish',
+150 silly registry.get     'cache-control': 'max-age=60',
+150 silly registry.get     etag: '"CJG62V7I3FJ24P2XCXAHP6PQO"',
+150 silly registry.get     age: '19',
+150 silly registry.get     connection: 'keep-alive',
+150 silly registry.get     'x-served-by': 'cache-ord1731-ORD',
+150 silly registry.get     'x-cache': 'HIT',
+150 silly registry.get     'x-cache-hits': '1',
+150 silly registry.get     'x-timer': 'S1432048961.108185,VS0,VE0',
+150 silly registry.get     vary: 'Accept' } ]
+151 verbose etag https://registry.npmjs.org/grunt-contrib-uglify from cache
+152 http 304 https://registry.npmjs.org/grunt-contrib-concat
+153 silly registry.get cb [ 304,
+153 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+153 silly registry.get     via: '1.1 varnish',
+153 silly registry.get     'cache-control': 'max-age=60',
+153 silly registry.get     etag: '"5YSQRTHHXC6IDBJCIWFWIB07E"',
+153 silly registry.get     age: '19',
+153 silly registry.get     connection: 'keep-alive',
+153 silly registry.get     'x-served-by': 'cache-ord1731-ORD',
+153 silly registry.get     'x-cache': 'HIT',
+153 silly registry.get     'x-cache-hits': '1',
+153 silly registry.get     'x-timer': 'S1432048961.113043,VS0,VE0',
+153 silly registry.get     vary: 'Accept' } ]
+154 verbose etag https://registry.npmjs.org/grunt-contrib-concat from cache
+155 silly addNameRange number 2 { name: 'grunt-sass',
+155 silly addNameRange   range: '>=0.17.0-0 <0.18.0-0',
+155 silly addNameRange   hasData: true }
+156 silly addNameRange versions [ 'grunt-sass',
+156 silly addNameRange   [ '0.1.0',
+156 silly addNameRange     '0.2.1',
+156 silly addNameRange     '0.2.2',
+156 silly addNameRange     '0.2.3',
+156 silly addNameRange     '0.2.4',
+156 silly addNameRange     '0.2.5',
+156 silly addNameRange     '0.3.0',
+156 silly addNameRange     '0.4.0',
+156 silly addNameRange     '0.4.1',
+156 silly addNameRange     '0.5.0',
+156 silly addNameRange     '0.6.0',
+156 silly addNameRange     '0.6.1',
+156 silly addNameRange     '0.7.0',
+156 silly addNameRange     '0.8.0',
+156 silly addNameRange     '0.8.1',
+156 silly addNameRange     '0.9.0',
+156 silly addNameRange     '0.10.0',
+156 silly addNameRange     '0.11.0',
+156 silly addNameRange     '0.12.0',
+156 silly addNameRange     '0.12.1',
+156 silly addNameRange     '0.13.0',
+156 silly addNameRange     '0.13.1',
+156 silly addNameRange     '0.14.0',
+156 silly addNameRange     '0.14.1',
+156 silly addNameRange     '0.14.2',
+156 silly addNameRange     '0.15.0',
+156 silly addNameRange     '0.16.0',
+156 silly addNameRange     '0.16.1',
+156 silly addNameRange     '0.17.0',
+156 silly addNameRange     '0.18.0',
+156 silly addNameRange     '0.18.1',
+156 silly addNameRange     '1.0.0' ] ]
+157 verbose addNamed [ 'grunt-sass', '0.17.0' ]
+158 verbose addNamed [ '0.17.0', '0.17.0' ]
+159 silly lockFile c2a418fd-grunt-sass-0-17-0 grunt-sass@0.17.0
+160 verbose lock grunt-sass@0.17.0 /home/steve/.npm/c2a418fd-grunt-sass-0-17-0.lock
+161 silly addNameRange number 2 { name: 'grunt', range: '>=0.4.5-0 <0.5.0-0', hasData: true }
+162 silly addNameRange versions [ 'grunt',
+162 silly addNameRange   [ '0.1.0',
+162 silly addNameRange     '0.1.1',
+162 silly addNameRange     '0.1.2',
+162 silly addNameRange     '0.2.0',
+162 silly addNameRange     '0.2.1',
+162 silly addNameRange     '0.2.2',
+162 silly addNameRange     '0.2.3',
+162 silly addNameRange     '0.2.4',
+162 silly addNameRange     '0.2.5',
+162 silly addNameRange     '0.2.6',
+162 silly addNameRange     '0.2.7',
+162 silly addNameRange     '0.2.8',
+162 silly addNameRange     '0.2.9',
+162 silly addNameRange     '0.2.10',
+162 silly addNameRange     '0.2.11',
+162 silly addNameRange     '0.2.12',
+162 silly addNameRange     '0.2.13',
+162 silly addNameRange     '0.2.14',
+162 silly addNameRange     '0.2.15',
+162 silly addNameRange     '0.3.0',
+162 silly addNameRange     '0.3.1',
+162 silly addNameRange     '0.3.2',
+162 silly addNameRange     '0.3.3',
+162 silly addNameRange     '0.3.4',
+162 silly addNameRange     '0.3.5',
+162 silly addNameRange     '0.3.6',
+162 silly addNameRange     '0.3.7',
+162 silly addNameRange     '0.3.8',
+162 silly addNameRange     '0.3.9',
+162 silly addNameRange     '0.3.10',
+162 silly addNameRange     '0.3.11',
+162 silly addNameRange     '0.3.12',
+162 silly addNameRange     '0.3.13',
+162 silly addNameRange     '0.3.14',
+162 silly addNameRange     '0.3.15',
+162 silly addNameRange     '0.3.16',
+162 silly addNameRange     '0.3.17',
+162 silly addNameRange     '0.4.0',
+162 silly addNameRange     '0.4.1',
+162 silly addNameRange     '0.4.2',
+162 silly addNameRange     '0.4.3',
+162 silly addNameRange     '0.4.4',
+162 silly addNameRange     '0.4.5',
+162 silly addNameRange     '0.3.13-a',
+162 silly addNameRange     '0.4.0-a',
+162 silly addNameRange     '0.4.0-rc1',
+162 silly addNameRange     '0.4.0-rc2',
+162 silly addNameRange     '0.4.0-rc3',
+162 silly addNameRange     '0.4.0-rc4',
+162 silly addNameRange     '0.4.0-rc5',
+162 silly addNameRange     '0.4.0-rc6',
+162 silly addNameRange     '0.4.0-rc7',
+162 silly addNameRange     '0.4.0-rc8' ] ]
+163 verbose addNamed [ 'grunt', '0.4.5' ]
+164 verbose addNamed [ '0.4.5', '0.4.5' ]
+165 silly lockFile 81abf7ad-grunt-0-4-5 grunt@0.4.5
+166 verbose lock grunt@0.4.5 /home/steve/.npm/81abf7ad-grunt-0-4-5.lock
+167 silly addNameRange number 2 { name: 'grunt-contrib-uglify',
+167 silly addNameRange   range: '>=0.7.0-0 <0.8.0-0',
+167 silly addNameRange   hasData: true }
+168 silly addNameRange versions [ 'grunt-contrib-uglify',
+168 silly addNameRange   [ '0.1.0',
+168 silly addNameRange     '0.1.1',
+168 silly addNameRange     '0.1.2',
+168 silly addNameRange     '0.2.0',
+168 silly addNameRange     '0.2.1',
+168 silly addNameRange     '0.2.2',
+168 silly addNameRange     '0.2.3',
+168 silly addNameRange     '0.2.4',
+168 silly addNameRange     '0.2.5',
+168 silly addNameRange     '0.2.6',
+168 silly addNameRange     '0.2.7',
+168 silly addNameRange     '0.3.0',
+168 silly addNameRange     '0.3.1',
+168 silly addNameRange     '0.1.1-rc5',
+168 silly addNameRange     '0.1.1-rc6',
+168 silly addNameRange     '0.3.2',
+168 silly addNameRange     '0.3.3',
+168 silly addNameRange     '0.4.0',
+168 silly addNameRange     '0.5.0',
+168 silly addNameRange     '0.4.1',
+168 silly addNameRange     '0.5.1',
+168 silly addNameRange     '0.6.0',
+168 silly addNameRange     '0.7.0',
+168 silly addNameRange     '0.8.0',
+168 silly addNameRange     '0.8.1',
+168 silly addNameRange     '0.9.0',
+168 silly addNameRange     '0.9.1' ] ]
+169 verbose addNamed [ 'grunt-contrib-uglify', '0.7.0' ]
+170 verbose addNamed [ '0.7.0', '0.7.0' ]
+171 silly lockFile 0707808c-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@0.7.0
+172 verbose lock grunt-contrib-uglify@0.7.0 /home/steve/.npm/0707808c-grunt-contrib-uglify-0-7-0.lock
+173 silly addNameRange number 2 { name: 'grunt-contrib-concat',
+173 silly addNameRange   range: '>=0.5.0-0 <0.6.0-0',
+173 silly addNameRange   hasData: true }
+174 silly addNameRange versions [ 'grunt-contrib-concat',
+174 silly addNameRange   [ '0.1.0',
+174 silly addNameRange     '0.1.1',
+174 silly addNameRange     '0.1.2',
+174 silly addNameRange     '0.1.3',
+174 silly addNameRange     '0.2.0',
+174 silly addNameRange     '0.3.0',
+174 silly addNameRange     '0.4.0',
+174 silly addNameRange     '0.5.0',
+174 silly addNameRange     '0.5.1',
+174 silly addNameRange     '0.1.2-rc5',
+174 silly addNameRange     '0.1.2-rc6' ] ]
+175 verbose addNamed [ 'grunt-contrib-concat', '0.5.1' ]
+176 verbose addNamed [ '0.5.1', '0.5.1' ]
+177 silly lockFile 63a362d5-grunt-contrib-concat-0-5-1 grunt-contrib-concat@0.5.1
+178 verbose lock grunt-contrib-concat@0.5.1 /home/steve/.npm/63a362d5-grunt-contrib-concat-0-5-1.lock
+179 http 304 https://registry.npmjs.org/grunt-contrib-watch
+180 silly registry.get cb [ 304,
+180 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+180 silly registry.get     via: '1.1 varnish',
+180 silly registry.get     'cache-control': 'max-age=60',
+180 silly registry.get     etag: '"8D5H42W1Y0YNSDVLWB9U0YW70"',
+180 silly registry.get     age: '29',
+180 silly registry.get     connection: 'keep-alive',
+180 silly registry.get     'x-served-by': 'cache-ord1725-ORD',
+180 silly registry.get     'x-cache': 'HIT',
+180 silly registry.get     'x-cache-hits': '1',
+180 silly registry.get     'x-timer': 'S1432048961.143918,VS0,VE0',
+180 silly registry.get     vary: 'Accept' } ]
+181 verbose etag https://registry.npmjs.org/grunt-contrib-watch from cache
+182 http 304 https://registry.npmjs.org/grunt-contrib-copy
+183 silly registry.get cb [ 304,
+183 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+183 silly registry.get     via: '1.1 varnish',
+183 silly registry.get     'cache-control': 'max-age=60',
+183 silly registry.get     etag: '"CPVJ8CTW0TGB88YJECPD3PSF0"',
+183 silly registry.get     age: '22',
+183 silly registry.get     connection: 'keep-alive',
+183 silly registry.get     'x-served-by': 'cache-ord1729-ORD',
+183 silly registry.get     'x-cache': 'HIT',
+183 silly registry.get     'x-cache-hits': '1',
+183 silly registry.get     'x-timer': 'S1432048961.146831,VS0,VE0',
+183 silly registry.get     vary: 'Accept' } ]
+184 verbose etag https://registry.npmjs.org/grunt-contrib-copy from cache
+185 silly lockFile c2a418fd-grunt-sass-0-17-0 grunt-sass@0.17.0
+186 silly lockFile c2a418fd-grunt-sass-0-17-0 grunt-sass@0.17.0
+187 silly addNameRange number 2 { name: 'grunt-contrib-watch',
+187 silly addNameRange   range: '>=0.6.1-0 <0.7.0-0',
+187 silly addNameRange   hasData: true }
+188 silly addNameRange versions [ 'grunt-contrib-watch',
+188 silly addNameRange   [ '0.1.0',
+188 silly addNameRange     '0.1.1',
+188 silly addNameRange     '0.1.2',
+188 silly addNameRange     '0.1.3',
+188 silly addNameRange     '0.1.4',
+188 silly addNameRange     '0.2.0',
+188 silly addNameRange     '0.3.0',
+188 silly addNameRange     '0.3.1',
+188 silly addNameRange     '0.4.0',
+188 silly addNameRange     '0.4.1',
+188 silly addNameRange     '0.4.2',
+188 silly addNameRange     '0.4.3',
+188 silly addNameRange     '0.4.4',
+188 silly addNameRange     '0.5.0',
+188 silly addNameRange     '0.5.1',
+188 silly addNameRange     '0.5.2',
+188 silly addNameRange     '0.5.3',
+188 silly addNameRange     '0.6.0',
+188 silly addNameRange     '0.6.1',
+188 silly addNameRange     '0.2.0-a',
+188 silly addNameRange     '0.2.0-rc5',
+188 silly addNameRange     '0.2.0-rc7' ] ]
+189 verbose addNamed [ 'grunt-contrib-watch', '0.6.1' ]
+190 verbose addNamed [ '0.6.1', '0.6.1' ]
+191 silly lockFile 08049756-grunt-contrib-watch-0-6-1 grunt-contrib-watch@0.6.1
+192 verbose lock grunt-contrib-watch@0.6.1 /home/steve/.npm/08049756-grunt-contrib-watch-0-6-1.lock
+193 silly addNameRange number 2 { name: 'grunt-contrib-copy',
+193 silly addNameRange   range: '>=0.7.0-0 <0.8.0-0',
+193 silly addNameRange   hasData: true }
+194 silly addNameRange versions [ 'grunt-contrib-copy',
+194 silly addNameRange   [ '0.2.0',
+194 silly addNameRange     '0.2.1',
+194 silly addNameRange     '0.2.2',
+194 silly addNameRange     '0.2.3',
+194 silly addNameRange     '0.2.4',
+194 silly addNameRange     '0.3.0',
+194 silly addNameRange     '0.3.1',
+194 silly addNameRange     '0.3.2',
+194 silly addNameRange     '0.4.0',
+194 silly addNameRange     '0.4.1',
+194 silly addNameRange     '0.5.0',
+194 silly addNameRange     '0.6.0',
+194 silly addNameRange     '0.7.0',
+194 silly addNameRange     '0.8.0',
+194 silly addNameRange     '0.4.0-rc7' ] ]
+195 verbose addNamed [ 'grunt-contrib-copy', '0.7.0' ]
+196 verbose addNamed [ '0.7.0', '0.7.0' ]
+197 silly lockFile 4a53bbfa-grunt-contrib-copy-0-7-0 grunt-contrib-copy@0.7.0
+198 verbose lock grunt-contrib-copy@0.7.0 /home/steve/.npm/4a53bbfa-grunt-contrib-copy-0-7-0.lock
+199 silly lockFile 81abf7ad-grunt-0-4-5 grunt@0.4.5
+200 silly lockFile 81abf7ad-grunt-0-4-5 grunt@0.4.5
+201 silly lockFile 0707808c-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@0.7.0
+202 silly lockFile 0707808c-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@0.7.0
+203 silly lockFile 63a362d5-grunt-contrib-concat-0-5-1 grunt-contrib-concat@0.5.1
+204 silly lockFile 63a362d5-grunt-contrib-concat-0-5-1 grunt-contrib-concat@0.5.1
+205 silly lockFile aa90627f-grunt-sass-0-17-0 grunt-sass@~0.17.0
+206 silly lockFile aa90627f-grunt-sass-0-17-0 grunt-sass@~0.17.0
+207 silly lockFile 240974bb-grunt-0-4-5 grunt@~0.4.5
+208 silly lockFile 240974bb-grunt-0-4-5 grunt@~0.4.5
+209 silly lockFile ed126bab-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@~0.7.0
+210 silly lockFile ed126bab-grunt-contrib-uglify-0-7-0 grunt-contrib-uglify@~0.7.0
+211 silly lockFile ab641ed0-grunt-contrib-concat-0-5-0 grunt-contrib-concat@~0.5.0
+212 silly lockFile ab641ed0-grunt-contrib-concat-0-5-0 grunt-contrib-concat@~0.5.0
+213 silly lockFile 08049756-grunt-contrib-watch-0-6-1 grunt-contrib-watch@0.6.1
+214 silly lockFile 08049756-grunt-contrib-watch-0-6-1 grunt-contrib-watch@0.6.1
+215 silly lockFile 4a53bbfa-grunt-contrib-copy-0-7-0 grunt-contrib-copy@0.7.0
+216 silly lockFile 4a53bbfa-grunt-contrib-copy-0-7-0 grunt-contrib-copy@0.7.0
+217 silly lockFile 82ce6ec8-grunt-contrib-watch-0-6-1 grunt-contrib-watch@~0.6.1
+218 silly lockFile 82ce6ec8-grunt-contrib-watch-0-6-1 grunt-contrib-watch@~0.6.1
+219 silly lockFile 20e4a8d9-grunt-contrib-copy-0-7-0 grunt-contrib-copy@~0.7.0
+220 silly lockFile 20e4a8d9-grunt-contrib-copy-0-7-0 grunt-contrib-copy@~0.7.0
+221 http 304 https://registry.npmjs.org/node-sass
+222 silly registry.get cb [ 304,
+222 silly registry.get   { date: 'Tue, 19 May 2015 15:22:41 GMT',
+222 silly registry.get     via: '1.1 varnish',
+222 silly registry.get     'cache-control': 'max-age=60',
+222 silly registry.get     etag: '"1TA53L79KUGNPDOL7483CV8GL"',
+222 silly registry.get     age: '55',
+222 silly registry.get     connection: 'keep-alive',
+222 silly registry.get     'x-served-by': 'cache-dfw1821-DFW',
+222 silly registry.get     'x-cache': 'HIT',
+222 silly registry.get     'x-cache-hits': '1',
+222 silly registry.get     'x-timer': 'S1432048961.177716,VS0,VE1',
+222 silly registry.get     vary: 'Accept' } ]
+223 verbose etag https://registry.npmjs.org/node-sass from cache
+224 silly addNameRange number 2 { name: 'node-sass', range: '>=1.2.3-0 <1.3.0-0', hasData: true }
+225 silly addNameRange versions [ 'node-sass',
+225 silly addNameRange   [ '0.2.0',
+225 silly addNameRange     '0.2.1',
+225 silly addNameRange     '0.2.2',
+225 silly addNameRange     '0.2.3',
+225 silly addNameRange     '0.2.4',
+225 silly addNameRange     '0.2.5',
+225 silly addNameRange     '0.2.6',
+225 silly addNameRange     '0.3.0',
+225 silly addNameRange     '0.4.0',
+225 silly addNameRange     '0.4.1',
+225 silly addNameRange     '0.4.2',
+225 silly addNameRange     '0.4.3',
+225 silly addNameRange     '0.4.4',
+225 silly addNameRange     '0.5.0',
+225 silly addNameRange     '0.5.1',
+225 silly addNameRange     '0.5.2',
+225 silly addNameRange     '0.5.3',
+225 silly addNameRange     '0.5.4',
+225 silly addNameRange     '0.6.0',
+225 silly addNameRange     '0.6.1',
+225 silly addNameRange     '0.6.2',
+225 silly addNameRange     '0.6.3',
+225 silly addNameRange     '0.6.4',
+225 silly addNameRange     '0.6.5',
+225 silly addNameRange     '0.6.6',
+225 silly addNameRange     '0.6.7',
+225 silly addNameRange     '0.7.0-alpha',
+225 silly addNameRange     '0.7.0',
+225 silly addNameRange     '0.8.0',
+225 silly addNameRange     '0.8.1',
+225 silly addNameRange     '0.8.2',
+225 silly addNameRange     '0.8.3',
+225 silly addNameRange     '0.8.4',
+225 silly addNameRange     '0.8.5',
+225 silly addNameRange     '0.8.6',
+225 silly addNameRange     '0.9.0',
+225 silly addNameRange     '0.9.1',
+225 silly addNameRange     '0.9.2',
+225 silly addNameRange     '0.9.3',
+225 silly addNameRange     '0.9.4-rc1',
+225 silly addNameRange     '0.9.4',
+225 silly addNameRange     '0.9.5-rc1',
+225 silly addNameRange     '0.9.5',
+225 silly addNameRange     '0.9.6',
+225 silly addNameRange     '1.0.0',
+225 silly addNameRange     '1.0.1',
+225 silly addNameRange     '1.0.2-alpha',
+225 silly addNameRange     '1.0.2',
+225 silly addNameRange     '1.0.3',
+225 silly addNameRange     '1.1.0',
+225 silly addNameRange     '1.1.1',
+225 silly addNameRange     '1.1.2',
+225 silly addNameRange     '1.1.3',
+225 silly addNameRange     '1.1.4',
+225 silly addNameRange     '1.2.0',
+225 silly addNameRange     '1.2.1',
+225 silly addNameRange     '1.2.2',
+225 silly addNameRange     '1.2.3',
+225 silly addNameRange     '2.0.0-beta',
+225 silly addNameRange     '2.0.0',
+225 silly addNameRange     '2.0.1',
+225 silly addNameRange     '3.0.0-alpha.0',
+225 silly addNameRange     '3.0.0-beta.2',
+225 silly addNameRange     '3.0.0-beta.3',
+225 silly addNameRange     '3.0.0-beta.4',
+225 silly addNameRange     '2.1.0',
+225 silly addNameRange     '2.1.1',
+225 silly addNameRange     '3.0.0-beta.5',
+225 silly addNameRange     '3.0.0-beta.7',
+225 silly addNameRange     '3.0.0',
+225 silly addNameRange     '3.1.0',
+225 silly addNameRange     '3.1.1' ] ]
+226 verbose addNamed [ 'node-sass', '1.2.3' ]
+227 verbose addNamed [ '1.2.3', '1.2.3' ]
+228 silly lockFile 0245b596-node-sass-1-2-3 node-sass@1.2.3
+229 verbose lock node-sass@1.2.3 /home/steve/.npm/0245b596-node-sass-1-2-3.lock
+230 silly lockFile 0245b596-node-sass-1-2-3 node-sass@1.2.3
+231 silly lockFile 0245b596-node-sass-1-2-3 node-sass@1.2.3
+232 silly lockFile 678e7a95-node-sass-1-2-3 node-sass@~1.2.3
+233 silly lockFile 678e7a95-node-sass-1-2-3 node-sass@~1.2.3
+234 silly resolved [ { name: 'grunt-sass',
+234 silly resolved     version: '0.17.0',
+234 silly resolved     description: 'Compile Sass to CSS using node-sass',
+234 silly resolved     license: 'MIT',
+234 silly resolved     repository: { type: 'git', url: 'git://github.com/sindresorhus/grunt-sass' },
+234 silly resolved     author:
+234 silly resolved      { name: 'Sindre Sorhus',
+234 silly resolved        email: 'sindresorhus@gmail.com',
+234 silly resolved        url: 'http://sindresorhus.com' },
+234 silly resolved     engines: { node: '>=0.10.0' },
+234 silly resolved     scripts: { test: 'grunt' },
+234 silly resolved     files: [ 'tasks' ],
+234 silly resolved     keywords:
+234 silly resolved      [ 'gruntplugin',
+234 silly resolved        'css',
+234 silly resolved        'sass',
+234 silly resolved        'scss',
+234 silly resolved        'style',
+234 silly resolved        'compile',
+234 silly resolved        'preprocess',
+234 silly resolved        'compile',
+234 silly resolved        'libsass' ],
+234 silly resolved     dependencies:
+234 silly resolved      { chalk: '^0.5.1',
+234 silly resolved        'each-async': '^1.0.0',
+234 silly resolved        'node-sass': '1.2.3',
+234 silly resolved        'object-assign': '^2.0.0' },
+234 silly resolved     devDependencies:
+234 silly resolved      { grunt: '^0.4.5',
+234 silly resolved        'grunt-contrib-clean': '^0.6.0',
+234 silly resolved        'grunt-contrib-nodeunit': '^0.4.1' },
+234 silly resolved     readme: '# grunt-sass [![Build Status](https://travis-ci.org/sindresorhus/grunt-sass.svg?branch=master)](https://travis-ci.org/sindresorhus/grunt-sass)\n\n[<img src="https://rawgit.com/sass/node-sass/master/media/logo.svg" width="200" align="right">](https://github.com/sass/node-sass)\n\n> Compile Sass to CSS using [node-sass](https://github.com/sass/node-sass)\n\n*Issues with the output should be reported on the libsass [issue tracker](https://github.com/hcatlin/libsass/issues).*\n\nThis task uses [libsass](http://libsass.org) which is an experimental Sass compiler in C++. In contrast to the original Ruby compiler, this one is much faster, but is missing some features, though improving quickly. It also doesn\'t support Compass. Check out [grunt-contrib-sass](https://github.com/gruntjs/grunt-contrib-sass) if you prefer something more stable, but slower.\n\n\n## Install\n\n```sh\n$ npm install --save-dev grunt-sass\n```\n\n\n## Usage\n\n```js\nrequire(\'load-grunt-tasks\')(grunt); // npm install --save-dev load-grunt-tasks\n\ngrunt.initConfig({\n\tsass: {\n\t\toptions: {\n\t\t\tsourceMap: true\n\t\t},\n\t\tdist: {\n\t\t\tfiles: {\n\t\t\t\t\'main.css\': \'main.scss\'\n\t\t\t}\n\t\t}\n\t}\n});\n\ngrunt.registerTask(\'default\', [\'sass\']);\n```\n\nFiles starting with `_` are ignored to match the expected [Sass partial behaviour](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#partials).\n\n\n## Options\n\n### includePaths\n\nType: `array`  \nDefault: `[]`\n\nAdditional paths to look for `@import`\'ed files.\n\n### outputStyle\n\nType: `string`  \nDefault: `nested`  \nValues: `\'nested\'`, `\'compressed\'`\n\nSpecify the CSS output style.\n\n### imagePath\n\nType: `string`\n\nRepresents the public image path. When using the `image-url()` function in a stylesheet, this path will be prepended to the path you supply. Example: Given an `imagePath` of `/path/to/images`, `background-image: image-url(\'image.png\')` will compile to `background-image: url("/path/to/images/image.png")`.\n\n### sourceMap\n\nType: `boolean`, `string`  \nDefault: `false`\n\nSet it to `true` to output a Source Map to the same location as the CSS *(output.css.map)*, or specify a path relative to the CSS file to where you want the Source Map.\n\n\n### precision\n\nType: `number`  \nDefault: `10`\n\nNumber of digits to preserve after the dot. With the number 1.23456789 and a precision of 3, the result will be 1.234 in the final CSS.\n\n\n## License\n\nMIT © [Sindre Sorhus](http://sindresorhus.com)\n',
+234 silly resolved     readmeFilename: 'readme.md',
+234 silly resolved     bugs: { url: 'https://github.com/sindresorhus/grunt-sass/issues' },
+234 silly resolved     _id: 'grunt-sass@0.17.0',
+234 silly resolved     _from: 'grunt-sass@~0.17.0' },
+234 silly resolved   { name: 'grunt',
+234 silly resolved     description: 'The JavaScript Task Runner',
+234 silly resolved     version: '0.4.5',
+234 silly resolved     author: { name: '"Cowboy" Ben Alman', url: 'http://benalman.com/' },
+234 silly resolved     homepage: 'http://gruntjs.com/',
+234 silly resolved     repository: { type: 'git', url: 'git://github.com/gruntjs/grunt.git' },
+234 silly resolved     bugs: { url: 'http://github.com/gruntjs/grunt/issues' },
+234 silly resolved     licenses: [ [Object] ],
+234 silly resolved     main: 'lib/grunt',
+234 silly resolved     scripts: { test: 'grunt test' },
+234 silly resolved     engines: { node: '>= 0.8.0' },
+234 silly resolved     keywords:
+234 silly resolved      [ 'task',
+234 silly resolved        'async',
+234 silly resolved        'cli',
+234 silly resolved        'minify',
+234 silly resolved        'uglify',
+234 silly resolved        'build',
+234 silly resolved        'lodash',
+234 silly resolved        'unit',
+234 silly resolved        'test',
+234 silly resolved        'qunit',
+234 silly resolved        'nodeunit',
+234 silly resolved        'server',
+234 silly resolved        'init',
+234 silly resolved        'scaffold',
+234 silly resolved        'make',
+234 silly resolved        'jake',
+234 silly resolved        'tool' ],
+234 silly resolved     dependencies:
+234 silly resolved      { async: '~0.1.22',
+234 silly resolved        'coffee-script': '~1.3.3',
+234 silly resolved        colors: '~0.6.2',
+234 silly resolved        dateformat: '1.0.2-1.2.3',
+234 silly resolved        eventemitter2: '~0.4.13',
+234 silly resolved        'findup-sync': '~0.1.2',
+234 silly resolved        glob: '~3.1.21',
+234 silly resolved        hooker: '~0.2.3',
+234 silly resolved        'iconv-lite': '~0.2.11',
+234 silly resolved        minimatch: '~0.2.12',
+234 silly resolved        nopt: '~1.0.10',
+234 silly resolved        rimraf: '~2.2.8',
+234 silly resolved        lodash: '~0.9.2',
+234 silly resolved        'underscore.string': '~2.2.1',
+234 silly resolved        which: '~1.0.5',
+234 silly resolved        'js-yaml': '~2.0.5',
+234 silly resolved        exit: '~0.1.1',
+234 silly resolved        getobject: '~0.1.0',
+234 silly resolved        'grunt-legacy-util': '~0.2.0',
+234 silly resolved        'grunt-legacy-log': '~0.1.0' },
+234 silly resolved     devDependencies:
+234 silly resolved      { temporary: '~0.0.4',
+234 silly resolved        'grunt-contrib-jshint': '~0.6.4',
+234 silly resolved        'grunt-contrib-nodeunit': '~0.2.0',
+234 silly resolved        'grunt-contrib-watch': '~0.5.3',
+234 silly resolved        difflet: '~0.2.3',
+234 silly resolved        semver: '2.1.0',
+234 silly resolved        shelljs: '~0.2.5' },
+234 silly resolved     readme: '# Grunt: The JavaScript Task Runner\n\n[![Build Status: Linux](https://secure.travis-ci.org/gruntjs/grunt.png?branch=master)](http://travis-ci.org/gruntjs/grunt)\n<a href="https://ci.appveyor.com/project/gruntjs/grunt"><img src="https://ci.appveyor.com/api/projects/status/32r7s2skrgm9ubva/branch/master" alt="Build Status: Windows" height="18" /></a>\n[![Built with Grunt](https://cdn.gruntjs.com/builtwith.png)](http://gruntjs.com/)\n\n<img align="right" height="260" src="http://gruntjs.com/img/grunt-logo-no-wordmark.svg">\n\n\n### Documentation\n\nVisit the [gruntjs.com](http://gruntjs.com/) website for all the things.\n\n### Support / Contributing\nBefore you make an issue, please read our [Contributing](http://gruntjs.com/contributing) guide.\n\nYou can find the grunt team in [#grunt on irc.freenode.net](http://webchat.freenode.net/?channels=grunt).\n\n### Release History\nSee the [CHANGELOG](CHANGELOG).\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     _id: 'grunt@0.4.5',
+234 silly resolved     _from: 'grunt@~0.4.5' },
+234 silly resolved   { name: 'grunt-contrib-uglify',
+234 silly resolved     description: 'Minify files with UglifyJS.',
+234 silly resolved     version: '0.7.0',
+234 silly resolved     homepage: 'https://github.com/gruntjs/grunt-contrib-uglify',
+234 silly resolved     author: { name: 'Grunt Team', url: 'http://gruntjs.com/' },
+234 silly resolved     repository:
+234 silly resolved      { type: 'git',
+234 silly resolved        url: 'git://github.com/gruntjs/grunt-contrib-uglify.git' },
+234 silly resolved     bugs: { url: 'https://github.com/gruntjs/grunt-contrib-uglify/issues' },
+234 silly resolved     licenses: [ [Object] ],
+234 silly resolved     engines: { node: '>=0.10.0' },
+234 silly resolved     scripts: { test: 'grunt test' },
+234 silly resolved     dependencies:
+234 silly resolved      { chalk: '^0.5.1',
+234 silly resolved        lodash: '^2.4.1',
+234 silly resolved        maxmin: '^1.0.0',
+234 silly resolved        'uglify-js': '^2.4.0',
+234 silly resolved        'uri-path': '0.0.2' },
+234 silly resolved     devDependencies:
+234 silly resolved      { grunt: '^0.4.2',
+234 silly resolved        'grunt-contrib-clean': '^0.6.0',
+234 silly resolved        'grunt-contrib-internal': '^0.4.2',
+234 silly resolved        'grunt-contrib-jshint': '^0.10.0',
+234 silly resolved        'grunt-contrib-nodeunit': '^0.4.0' },
+234 silly resolved     peerDependencies: { grunt: '~0.4.0' },
+234 silly resolved     keywords: [ 'gruntplugin' ],
+234 silly resolved     files: [ 'tasks', 'LICENSE-MIT' ],
+234 silly resolved     appveyor_id: 'ybtf5vbvtenii561',
+234 silly resolved     readme: '# grunt-contrib-uglify v0.7.0 [![Build Status: Linux](https://travis-ci.org/gruntjs/grunt-contrib-uglify.svg?branch=master)](https://travis-ci.org/gruntjs/grunt-contrib-uglify) [![Build Status: Windows](https://ci.appveyor.com/api/projects/status/ybtf5vbvtenii561/branch/master?svg=true)](https://ci.appveyor.com/project/gruntjs/grunt-contrib-uglify/branch/master)\n\n> Minify files with UglifyJS.\n\n\n\n## Getting Started\nThis plugin requires Grunt `~0.4.0`\n\nIf you haven\'t used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you\'re familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-contrib-uglify --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks(\'grunt-contrib-uglify\');\n```\n\n\n\n\n## Uglify task\n_Run this task with the `grunt uglify` command._\n\nTask targets, files and options may be specified according to the grunt [Configuring tasks](http://gruntjs.com/configuring-tasks) guide.\n\n### Migrating from 2.x to 3.x\n\nVersion `3.x` introduced changes to configuring source maps. Accordingly, if you don\'t use the source map options you should be able to upgrade seamlessly. If you do use source maps, see below.\n\n#### Removed options\n\n`sourceMappingURL` - This is calculated automatically now\n`sourceMapPrefix` - No longer necessary for the above reason\n\n#### Changed options\n\n`sourceMap` - Only accepts a `Boolean` value. Generates a map with a default name for you\n`sourceMapRoot` - The location of your sources is now calculated for you when `sourceMap` is set to `true` but you can set manual source root if needed\n\n#### New options\n\n`sourceMapName` - Accepts a string or function to change the location or name of your map\n`sourceMapIncludeSources` - Embed the content of your source files directly into the map\n`expression` - Accepts a `Boolean` value. Parse a single expression (JSON or single functions)\n\n### Options\n\nThis task primarily delegates to [UglifyJS2][], so please consider the [UglifyJS documentation][] as required reading for advanced configuration.\n\n[UglifyJS2]: https://github.com/mishoo/UglifyJS2\n[UglifyJS documentation]: http://lisperator.net/uglifyjs/\n\n#### mangle\nType: `Boolean` `Object`  \nDefault: `{}`\n\nTurn on or off mangling with default options. If an `Object` is specified, it is passed directly to `ast.mangle_names()` *and* `ast.compute_char_frequency()` (mimicking command line behavior).\n\n#### compress\nType: `Boolean` `Object`  \nDefault: `{}`\n\nTurn on or off source compression with default options. If an `Object` is specified, it is passed as options to `UglifyJS.Compressor()`.\n\n#### beautify\nType: `Boolean` `Object`  \nDefault: `false`\n\nTurns on beautification of the generated source code. An `Object` will be merged and passed with the options sent to `UglifyJS.OutputStream()`\n\n###### expression\nType: `Boolean`\nDefault: `false`\n\nParse a single expression, rather than a program (for parsing JSON)\n\n#### report\nChoices: `\'min\'`, `\'gzip\'`  \nDefault: `\'min\'`\n\nEither report only minification result or report minification and gzip results.\nThis is useful to see exactly how well clean-css is performing but using `\'gzip\'` will make the task take 5-10x longer to complete. [Example output](https://github.com/sindresorhus/maxmin#readme).\n\n#### sourceMap\nType: `Boolean`  \nDefault: `false`\n\nIf `true`, a source map file will be generated in the same directory as the `dest` file. By default it will have the same basename as the `dest` file, but with a `.map` extension.\n\n#### sourceMapName\nType: `String`  `Function`  \nDefault: `undefined`\n\nTo customize the name or location of the generated source map, pass a string to indicate where to write the source map to. If a function is provided, the uglify destination is passed as the argument and the return value will be used as the file name.\n\n#### sourceMapIn\nType: `String`  `Function`  \nDefault: `undefined`\n\nThe location of an input source map from an earlier compilation, e.g. from CoffeeScript. If a function is provided, the\nuglify source is passed as the argument and the return value will be used as the sourceMap name. This only makes sense\nwhen there\'s one source file.\n\n#### sourceMapIncludeSources\nType: `Boolean`\nDefault: `false`\n\nPass this flag if you want to include the content of source files in the source map as sourcesContent property.\n\n###### sourceMapRoot\nType: `String`\nDefault: `undefined`\n\nWith this option you can customize root URL that browser will use when looking for sources.\n\nIf the sources are not absolute URLs after prepending of the `sourceMapRoot`, the sources are resolved relative to the source map.\n\n###### enclose\nType: `Object`  \nDefault: `undefined`\n\nWrap all of the code in a closure with a configurable arguments/parameters list.\nEach key-value pair in the `enclose` object is effectively an argument-parameter pair.\n\n#### wrap\nType: `String`  \nDefault: `undefined`\n\nWrap all of the code in a closure, an easy way to make sure nothing is leaking.\nFor variables that need to be public `exports` and `global` variables are made available.\nThe value of wrap is the global variable exports will be available as.\n\n#### maxLineLen\nType: `Number`\nDefault: `32000`\n\nLimit the line length in symbols. Pass maxLineLen = 0 to disable this safety feature.\n\n#### ASCIIOnly\nType: `Boolean`\nDefault: `false`\n\nEnables to encode non-ASCII characters as \\uXXXX.\n\n#### exportAll\nType: `Boolean`  \nDefault: `false`\n\nWhen using `wrap` this will make all global functions and variables available via the export variable.\n\n#### preserveComments\nType: `Boolean` `String` `Function`  \nDefault: `undefined`  \nOptions: `false` `\'all\'` `\'some\'`\n\nTurn on preservation of comments.\n\n- `false` will strip all comments\n- `\'all\'` will preserve all comments in code blocks that have not been squashed or dropped\n- `\'some\'` will preserve all comments that start with a bang (`!`) or include a closure compiler style directive (`@preserve` `@license` `@cc_on`)\n- `Function` specify your own comment preservation function. You will be passed the current node and the current comment and are expected to return either `true` or `false`\n\n#### banner\nType: `String`  \nDefault: empty string\n\nThis string will be prepended to the minified output.  Template strings (e.g. `<%= config.value %>` will be expanded automatically.\n\n#### footer\nType: `String`  \nDefault: empty string\n\nThis string will be appended to the minified output.  Template strings (e.g. `<%= config.value %>` will be expanded automatically.\n\n### Usage examples\n\n#### Basic compression\n\nThis configuration will compress and mangle the input files using the default options.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input1.js\', \'src/input2.js\']\n      }\n    }\n  }\n});\n```\n\n#### No mangling\n\nSpecify `mangle: false` to prevent changes to your variable and function names.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    options: {\n      mangle: false\n    },\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Reserved identifiers\n\nYou can specify identifiers to leave untouched with an `except` array in the `mangle` options.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    options: {\n      mangle: {\n        except: [\'jQuery\', \'Backbone\']\n      }\n    },\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Source maps\n\nGenerate a source map by setting the `sourceMap` option to `true`. The generated\nsource map will be in the same directory as the destination file. Its name will be the\nbasename of the destination file with a `.map` extension. Override these\ndefaults with the `sourceMapName` attribute.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    my_target: {\n      options: {\n        sourceMap: true,\n        sourceMapName: \'path/to/sourcemap.map\'\n      },\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Advanced source maps\n\nSet the `sourceMapIncludeSources` option to `true` to embed your sources directly into the map. To include\na source map from a previous compilation pass it as the value of the `sourceMapIn` option.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    my_target: {\n      options: {\n        sourceMap: true,\n        sourceMapIncludeSources: true,\n        sourceMapIn: \'example/coffeescript-sourcemap.js\', // input sourcemap from a previous compilation\n      },\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\'],\n      },\n    },\n  },\n});\n```\n\nRefer to the [UglifyJS SourceMap Documentation](http://lisperator.net/uglifyjs/codegen#source-map) for more information.\n\n\n#### Turn off console warnings\n\nSpecify `drop_console: true` as part of the `compress` options to discard calls to `console.*` functions.\nThis will supress warning messages in the console.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    options: {\n      compress: {\n        drop_console: true\n      }\n    },\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Beautify\n\nSpecify `beautify: true` to beautify your code for debugging/troubleshooting purposes.\nPass an object to manually configure any other output options passed directly to `UglifyJS.OutputStream()`.\n\nSee [UglifyJS Codegen documentation](http://lisperator.net/uglifyjs/codegen) for more information.\n\n_Note that manual configuration will require you to explicitly set `beautify: true` if you want traditional, beautified output._\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    my_target: {\n      options: {\n        beautify: true\n      },\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    },\n    my_advanced_target: {\n      options: {\n        beautify: {\n          width: 80,\n          beautify: true\n        }\n      },\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Banner comments\n\nIn this example, running `grunt uglify:my_target` will prepend a banner created by interpolating the `banner` template string with the config object. Here, those properties are the values imported from the `package.json` file (which are available via the `pkg` config property) plus today\'s date.\n\n_Note: you don\'t have to use an external JSON file. It\'s also valid to create the `pkg` object inline in the config. That being said, if you already have a JSON file, you might as well reference it._\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  pkg: grunt.file.readJSON(\'package.json\'),\n  uglify: {\n    options: {\n      banner: \'/*! <%= pkg.name %> - v<%= pkg.version %> - \' +\n        \'<%= grunt.template.today("yyyy-mm-dd") %> */\'\n    },\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n\n#### Conditional compilation\n\nYou can also enable UglifyJS conditional compilation. This is commonly used to remove debug code blocks for production builds.\n\nSee [UglifyJS global definitions documentation](http://lisperator.net/uglifyjs/compress#global-defs) for more information.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    options: {\n      compress: {\n        global_defs: {\n          "DEBUG": false\n        },\n        dead_code: true\n      }\n    },\n    my_target: {\n      files: {\n        \'dest/output.min.js\': [\'src/input.js\']\n      }\n    }\n  }\n});\n```\n#### Compiling all files in a folder dynamically\n\nThis configuration will compress and mangle the files dynamically.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  uglify: {\n    my_target: {\n      files: [{\n          expand: true,\n          cwd: \'src/js\',\n          src: \'**/*.js\',\n          dest: \'dest/js\'\n      }]\n    }\n  }\n});\n```\n\n\n## Release History\n\n * 2014-12-23   v0.7.0   Adds sourceMapRoot options. Updates readme descriptions. Removes reference to cleancss.\n * 2014-09-17   v0.6.0   Output fixes. ASCIIOnly option. Other fixes.\n * 2014-07-25   v0.5.1   Chalk updates. Output updates.\n * 2014-03-01   v0.4.0   remove grunt-lib-contrib dependency and add more colors\n * 2014-02-27   v0.3.3   remove unnecessary calls to `grunt.template.process`\n * 2014-01-22   v0.3.2   fix handling of `sourceMapIncludeSources` option.\n * 2014-01-20   v0.3.1   fix relative path issue in sourcemaps\n * 2014-01-16   v0.3.0   refactor sourcemap support\n * 2013-11-09   v0.2.7   prepending banner if sourceMap option not set, addresses\n * 2013-11-08   v0.2.6   merged 45, 53, 85 (105 by way of duping 53) Added support for banners in uglified files with sourcemaps Updated docs\n * 2013-10-28   v0.2.5   Added warning for banners when using sourcemaps\n * 2013-09-02   v0.2.4   updated sourcemap format via /83\n * 2013-06-10   v0.2.3   added footer option\n * 2013-05-31   v0.2.2   Reverted /56 due to /58 until [chrome/239660](https://code.google.com/p/chromium/issues/detail?id=239660&q=sourcemappingurl&colspec=ID%20Pri%20M%20Iteration%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified) [firefox/870361](https://bugzilla.mozilla.org/show_bug.cgi?id=870361) drop\n * 2013-05-22   v0.2.1   Bumped uglify to ~2.3.5 /55 /40 Changed sourcemappingUrl syntax /56 Disabled sorting of names for consistent mangling /44 Updated docs for sourceMapRoot /47 /25\n * 2013-03-14   v0.2.0   No longer report gzip results by default. Support `report` option.\n * 2013-01-30   v0.1.2   Added better error reporting Support for dynamic names of multiple sourcemaps\n * 2013-02-15   v0.1.1   First official release for Grunt 0.4.0.\n * 2013-01-18   v0.1.1rc6   Updating grunt/gruntplugin dependencies to rc6. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.\n * 2013-01-09   v0.1.1rc5   Updating to work with grunt v0.4.0rc5. Switching back to this.files api.\n * 2012-11-28   v0.1.0   Work in progress, not yet officially released.\n\n---\n\nTask submitted by ["Cowboy" Ben Alman](http://benalman.com)\n\n*This file was generated on Tue Dec 23 2014 16:18:53.*\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     _id: 'grunt-contrib-uglify@0.7.0',
+234 silly resolved     _from: 'grunt-contrib-uglify@~0.7.0' },
+234 silly resolved   { name: 'grunt-contrib-concat',
+234 silly resolved     description: 'Concatenate files.',
+234 silly resolved     version: '0.5.1',
+234 silly resolved     author: { name: 'Grunt Team', url: 'http://gruntjs.com/' },
+234 silly resolved     repository:
+234 silly resolved      { type: 'git',
+234 silly resolved        url: 'git://github.com/gruntjs/grunt-contrib-concat' },
+234 silly resolved     licenses: [ [Object] ],
+234 silly resolved     engines: { node: '>=0.10.0' },
+234 silly resolved     scripts: { test: 'grunt test' },
+234 silly resolved     dependencies: { chalk: '^0.5.1', 'source-map': '^0.3.0' },
+234 silly resolved     devDependencies:
+234 silly resolved      { grunt: '^0.4.5',
+234 silly resolved        'grunt-cli': '^0.1.13',
+234 silly resolved        'grunt-contrib-clean': '^0.6.0',
+234 silly resolved        'grunt-contrib-internal': '^0.4.2',
+234 silly resolved        'grunt-contrib-jshint': '^0.11.0',
+234 silly resolved        'grunt-contrib-nodeunit': '^0.4.0' },
+234 silly resolved     peerDependencies: { grunt: '>=0.4.0' },
+234 silly resolved     keywords: [ 'gruntplugin' ],
+234 silly resolved     files: [ 'tasks' ],
+234 silly resolved     appveyor_id: 'l42173901ms416km',
+234 silly resolved     readme: '# grunt-contrib-concat v0.5.1 [![Build Status: Linux](https://travis-ci.org/gruntjs/grunt-contrib-concat.svg?branch=master)](https://travis-ci.org/gruntjs/grunt-contrib-concat) [![Build Status: Windows](https://ci.appveyor.com/api/projects/status/l42173901ms416km/branch/master?svg=true)](https://ci.appveyor.com/project/gruntjs/grunt-contrib-concat/branch/master)\n\n> Concatenate files.\n\n\n\n## Getting Started\nThis plugin requires Grunt `>=0.4.0`\n\nIf you haven\'t used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you\'re familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-contrib-concat --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks(\'grunt-contrib-concat\');\n```\n\n\n\n\n## Concat task\n_Run this task with the `grunt concat` command._\n\nTask targets, files and options may be specified according to the Grunt [Configuring tasks](http://gruntjs.com/configuring-tasks) guide.\n\n### Options\n\n#### separator\nType: `String`\nDefault: `grunt.util.linefeed`\n\nConcatenated files will be joined on this string. If you\'re post-processing concatenated JavaScript files with a minifier, you may need to use a semicolon `\';\'` as the separator.\n\n#### banner\nType: `String`\nDefault: empty string\n\nThis string will be prepended to the beginning of the concatenated output. It is processed using [grunt.template.process][], using the default options.\n\n_(Default processing options are explained in the [grunt.template.process][] documentation)_\n\n#### footer\nType: `String`\nDefault: empty string\n\nThis string will be appended to the end of the concatenated output. It is processed using [grunt.template.process][], using the default options.\n\n_(Default processing options are explained in the [grunt.template.process][] documentation)_\n\n#### stripBanners\nType: `Boolean` `Object`\nDefault: `false`\n\nStrip JavaScript banner comments from source files.\n\n* `false` - No comments are stripped.\n* `true` - `/* ... */` block comments are stripped, but _NOT_ `/*! ... */` comments.\n* `options` object:\n  * By default, behaves as if `true` were specified.\n  * `block` - If true, _all_ block comments are stripped.\n  * `line` - If true, any contiguous _leading_ `//` line comments are stripped.\n\n#### process\nType: `Boolean` `Object` `Function`\nDefault: `false`\n\nProcess source files before concatenating, either as [templates][] or with a custom function.\n\n* `false` - No processing will occur.\n* `true` - Process source files using [grunt.template.process][] defaults.\n* `data` object - Process source files using [grunt.template.process][], using the specified options.\n* `function(src, filepath)` - Process source files using the given function, called once for each file. The returned value will be used as source code.\n\n_(Default processing options are explained in the [grunt.template.process][] documentation)_\n\n  [templates]: https://github.com/gruntjs/grunt-docs/blob/master/grunt.template.md\n  [grunt.template.process]: https://github.com/gruntjs/grunt-docs/blob/master/grunt.template.md#grunttemplateprocess\n\n#### sourceMap\nType: `Boolean`\nDefault: `false`\n\nSet to true to create a source map. The source map will be created alongside the destination file, and share the same file name with the `.map` extension appended to it.\n\n#### sourceMapName\nType: `String` `Function`\nDefault: `undefined`\n\nTo customize the name or location of the generated source map, pass a string to indicate where to write the source map to. If a function is provided, the concat destination is passed as the argument and the return value will be used as the file name.\n\n#### sourceMapStyle\nType: `String`\nDefault: `embed`\n\nDetermines the type of source map that is generated. The default value, `embed`, places the content of the sources directly into the map. `link` will reference the original sources in the map as links. `inline` will store the entire map as a data URI in the destination file.\n\n### Usage Examples\n\n#### Concatenating with a custom separator\n\nIn this example, running `grunt concat:dist` (or `grunt concat` because `concat` is a [multi task][multitask]) will concatenate the three specified source files (in order), joining files with `;` and writing the output to `dist/built.js`.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  concat: {\n    options: {\n      separator: \';\',\n    },\n    dist: {\n      src: [\'src/intro.js\', \'src/project.js\', \'src/outro.js\'],\n      dest: \'dist/built.js\',\n    },\n  },\n});\n```\n\n#### Banner comments\n\nIn this example, running `grunt concat:dist` will first strip any preexisting banner comment from the `src/project.js` file, then concatenate the result with a newly-generated banner comment, writing the output to `dist/built.js`.\n\nThis generated banner will be the contents of the `banner` template string interpolated with the config object. In this case, those properties are the values imported from the `package.json` file (which are available via the `pkg` config property) plus today\'s date.\n\n_Note: you don\'t have to use an external JSON file. It\'s also valid to create the `pkg` object inline in the config. That being said, if you already have a JSON file, you might as well reference it._\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  pkg: grunt.file.readJSON(\'package.json\'),\n  concat: {\n    options: {\n      stripBanners: true,\n      banner: \'/*! <%= pkg.name %> - v<%= pkg.version %> - \' +\n        \'<%= grunt.template.today("yyyy-mm-dd") %> */\',\n    },\n    dist: {\n      src: [\'src/project.js\'],\n      dest: \'dist/built.js\',\n    },\n  },\n});\n```\n\n#### Multiple targets\n\nIn this example, running `grunt concat` will build two separate files. One "basic" version, with the main file essentially just copied to `dist/basic.js`, and another "with_extras" concatenated version written to `dist/with_extras.js`.\n\nWhile each concat target can be built individually by running `grunt concat:basic` or `grunt concat:extras`, running `grunt concat` will build all concat targets. This is because `concat` is a [multi task][multitask].\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  concat: {\n    basic: {\n      src: [\'src/main.js\'],\n      dest: \'dist/basic.js\',\n    },\n    extras: {\n      src: [\'src/main.js\', \'src/extras.js\'],\n      dest: \'dist/with_extras.js\',\n    },\n  },\n});\n```\n\n#### Multiple files per target\n\nLike the previous example, in this example running `grunt concat` will build two separate files. One "basic" version, with the main file essentially just copied to `dist/basic.js`, and another "with_extras" concatenated version written to `dist/with_extras.js`.\n\nThis example differs in that both files are built under the same target.\n\nUsing the `files` object, you can have list any number of source-destination pairs.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  concat: {\n    basic_and_extras: {\n      files: {\n        \'dist/basic.js\': [\'src/main.js\'],\n        \'dist/with_extras.js\': [\'src/main.js\', \'src/extras.js\'],\n      },\n    },\n  },\n});\n```\n\n#### Dynamic filenames\n\nFilenames can be generated dynamically by using `<%= %>` delimited underscore templates as filenames.\n\nIn this example, running `grunt concat:dist` generates a destination file whose name is generated from the `name` and `version` properties of the referenced `package.json` file (via the `pkg` config property).\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  pkg: grunt.file.readJSON(\'package.json\'),\n  concat: {\n    dist: {\n      src: [\'src/main.js\'],\n      dest: \'dist/<%= pkg.name %>-<%= pkg.version %>.js\',\n    },\n  },\n});\n```\n\n#### Advanced dynamic filenames\n\nIn this more involved example, running `grunt concat` will build two separate files (because `concat` is a [multi task][multitask]). The destination file paths will be expanded dynamically based on the specified templates, recursively if necessary.\n\nFor example, if the `package.json` file contained `{"name": "awesome", "version": "1.0.0"}`, the files `dist/awesome/1.0.0/basic.js` and `dist/awesome/1.0.0/with_extras.js` would be generated.\n\n```js\n// Project configuration.\ngrunt.initConfig({\n  pkg: grunt.file.readJSON(\'package.json\'),\n  dirs: {\n    src: \'src/files\',\n    dest: \'dist/<%= pkg.name %>/<%= pkg.version %>\',\n  },\n  concat: {\n    basic: {\n      src: [\'<%= dirs.src %>/main.js\'],\n      dest: \'<%= dirs.dest %>/basic.js\',\n    },\n    extras: {\n      src: [\'<%= dirs.src %>/main.js\', \'<%= dirs.src %>/extras.js\'],\n      dest: \'<%= dirs.dest %>/with_extras.js\',\n    },\n  },\n});\n```\n\n#### Invalid or Missing Files Warning\nIf you would like the `concat` task to warn if a given file is missing or invalid be sure to set `nonull` to `true`:\n\n```js\ngrunt.initConfig({\n  concat: {\n    missing: {\n      src: [\'src/invalid_or_missing_file\'],\n      dest: \'compiled.js\',\n      nonull: true,\n    },\n  },\n});\n```\n\nSee [configuring files for a task](http://gruntjs.com/configuring-tasks#files) for how to configure file globbing in Grunt.\n\n\n#### Custom process function\nIf you would like to do any custom processing before concatenating, use a custom process function:\n\n```js\ngrunt.initConfig({\n  concat: {\n    dist: {\n      options: {\n        // Replace all \'use strict\' statements in the code with a single one at the top\n        banner: "\'use strict\';\\n",\n        process: function(src, filepath) {\n          return \'// Source: \' + filepath + \'\\n\' +\n            src.replace(/(^|\\n)[ \\t]*(\'use strict\'|"use strict");?\\s*/g, \'$1\');\n        },\n      },\n      files: {\n        \'dist/built.js\': [\'src/project.js\'],\n      },\n    },\n  },\n});\n```\n\n[multitask]: http://gruntjs.com/creating-tasks#multi-tasks\n\n\n## Release History\n\n * 2015-02-20   v0.5.1   Fix path issues with Source Maps on Windows.\n * 2014-07-19   v0.5.0   Adds sourceMap option.\n * 2014-03-21   v0.4.0   README updates. Output updates.\n * 2013-04-25   v0.3.0   Add option to process files with a custom function.\n * 2013-04-08   v0.2.0   Don\'t normalize separator to allow user to set LF even on a Windows environment.\n * 2013-02-22   v0.1.3   Support footer option.\n * 2013-02-15   v0.1.2   First official release for Grunt 0.4.0.\n * 2013-01-18   v0.1.2rc6   Updating grunt/gruntplugin dependencies to rc6. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.\n * 2013-01-09   v0.1.2rc5   Updating to work with grunt v0.4.0rc5. Switching back to this.files api.\n * 2012-11-13   v0.1.1   Switch to this.file api internally.\n * 2012-10-03   v0.1.0   Work in progress, not yet officially released.\n\n---\n\nTask submitted by ["Cowboy" Ben Alman](http://benalman.com/)\n\n*This file was generated on Fri Feb 20 2015 10:39:55.*\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     bugs: { url: 'https://github.com/gruntjs/grunt-contrib-concat/issues' },
+234 silly resolved     _id: 'grunt-contrib-concat@0.5.1',
+234 silly resolved     _from: 'grunt-contrib-concat@~0.5.0' },
+234 silly resolved   { name: 'grunt-contrib-watch',
+234 silly resolved     description: 'Run predefined tasks whenever watched file patterns are added, changed or deleted.',
+234 silly resolved     version: '0.6.1',
+234 silly resolved     homepage: 'https://github.com/gruntjs/grunt-contrib-watch',
+234 silly resolved     author: { name: 'Grunt Team', url: 'http://gruntjs.com/' },
+234 silly resolved     repository:
+234 silly resolved      { type: 'git',
+234 silly resolved        url: 'git://github.com/gruntjs/grunt-contrib-watch.git' },
+234 silly resolved     bugs: { url: 'https://github.com/gruntjs/grunt-contrib-watch/issues' },
+234 silly resolved     licenses: [ [Object] ],
+234 silly resolved     engines: { node: '>= 0.8.0' },
+234 silly resolved     scripts: { test: 'grunt nodeunit -v' },
+234 silly resolved     dependencies:
+234 silly resolved      { gaze: '~0.5.1',
+234 silly resolved        'tiny-lr-fork': '0.0.5',
+234 silly resolved        lodash: '~2.4.1',
+234 silly resolved        async: '~0.2.9' },
+234 silly resolved     devDependencies:
+234 silly resolved      { grunt: '~0.4.0',
+234 silly resolved        'grunt-contrib-jshint': '~0.8.0',
+234 silly resolved        'grunt-contrib-nodeunit': '~0.3.3',
+234 silly resolved        'grunt-contrib-internal': '~0.4.7',
+234 silly resolved        'underscore.string': '~2.3.3' },
+234 silly resolved     peerDependencies: { grunt: '~0.4.0' },
+234 silly resolved     keywords: [ 'gruntplugin', 'watch' ],
+234 silly resolved     files: [ 'tasks', 'LICENSE-MIT' ],
+234 silly resolved     readme: '# grunt-contrib-watch v0.6.1 [![Build Status](https://travis-ci.org/gruntjs/grunt-contrib-watch.png?branch=master)](https://travis-ci.org/gruntjs/grunt-contrib-watch)\n\n> Run predefined tasks whenever watched file patterns are added, changed or deleted.\n\n\n\n## Getting Started\nThis plugin requires Grunt `~0.4.0`\n\nIf you haven\'t used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you\'re familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-contrib-watch --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks(\'grunt-contrib-watch\');\n```\n\n\n\n\n## Watch task\n_Run this task with the `grunt watch` command._\n\n\n### Settings\n\nThere are a number of options available. Please review the [minimatch options here](https://github.com/isaacs/minimatch#options). As well as some additional options as follows:\n\n#### files\nType: `String|Array`\n\nThis defines what file patterns this task will watch. Can be a string or an array of files and/or minimatch patterns.\n\n#### tasks\nType: `String|Array`\n\nThis defines which tasks to run when a watched file event occurs.\n\n#### options.spawn\nType: `Boolean`\nDefault: true\n\nWhether to spawn task runs in a child process. Setting this option to `false` speeds up the reaction time of the watch (usually 500ms faster for most) and allows subsequent task runs to share the same context. Not spawning task runs can make the watch more prone to failing so please use as needed.\n\nExample:\n```js\nwatch: {\n  scripts: {\n    files: [\'**/*.js\'],\n    tasks: [\'jshint\'],\n    options: {\n      spawn: false,\n    },\n  },\n},\n```\n\n*For backwards compatibility the option `nospawn` is still available and will do the opposite of `spawn`.*\n\n#### options.interrupt\nType: `Boolean`\nDefault: false\n\nAs files are modified this watch task will spawn tasks in child processes. The default behavior will only spawn a new child process per target when the previous process has finished. Set the `interrupt` option to true to terminate the previous process and spawn a new one upon later changes.\n\nExample:\n```js\nwatch: {\n  scripts: {\n    files: \'**/*.js\',\n    tasks: [\'jshint\'],\n    options: {\n      interrupt: true,\n    },\n  },\n},\n```\n\n#### options.debounceDelay\nType: `Integer`\nDefault: 500\n\nHow long to wait before emitting events in succession for the same filepath and status. For example if your `Gruntfile.js` file was `changed`, a `changed` event will only fire again after the given milliseconds.\n\nExample:\n```js\nwatch: {\n  scripts: {\n    files: \'**/*.js\',\n    tasks: [\'jshint\'],\n    options: {\n      debounceDelay: 250,\n    },\n  },\n},\n```\n\n#### options.interval\nType: `Integer`\nDefault: 100\n\nThe `interval` is passed to `fs.watchFile`. Since `interval` is only used by `fs.watchFile` and this watcher also uses `fs.watch`; it is recommended to ignore this option. *Default is 100ms*.\n\n#### options.event\nType: `String|Array`\nDefault: `\'all\'`\n\nSpecify the type watch event that trigger the specified task. This option can be one or many of: `\'all\'`, `\'changed\'`, `\'added\'` and `\'deleted\'`.\n\nExample:\n```js\nwatch: {\n  scripts: {\n    files: \'**/*.js\',\n    tasks: [\'generateFileManifest\'],\n    options: {\n      event: [\'added\', \'deleted\'],\n    },\n  },\n},\n```\n\n#### options.reload\nType: `Boolean`\nDefault: `false`\n\nBy default, if `Gruntfile.js` is being watched, then changes to it will trigger the watch task to restart, and reload the `Gruntfile.js` changes.\nWhen `reload` is set to `true`, changes to *any* of the watched files will trigger the watch task to restart.\nThis is especially useful if your `Gruntfile.js` is dependent on other files.\n\n```js\nwatch: {\n  configFiles: {\n    files: [ \'Gruntfile.js\', \'config/*.js\' ],\n    options: {\n      reload: true\n    }\n  }\n}\n```\n\n\n#### options.forever\nType: `Boolean`\nDefault: true\n\nThis is *only a task level option* and cannot be configured per target. By default the watch task will duck punch `grunt.fatal` and `grunt.warn` to try and prevent them from exiting the watch process. If you don\'t want `grunt.fatal` and `grunt.warn` to be overridden set the `forever` option to `false`.\n\n#### options.dateFormat\nType: `Function`\n\nThis is *only a task level option* and cannot be configured per target. By default when the watch has finished running tasks it will display the message `Completed in 1.301s at Thu Jul 18 2013 14:58:21 GMT-0700 (PDT) - Waiting...`. You can override this message by supplying your own function:\n\n```js\nwatch: {\n  options: {\n    dateFormat: function(time) {\n      grunt.log.writeln(\'The watch finished in \' + time + \'ms at\' + (new Date()).toString());\n      grunt.log.writeln(\'Waiting for more changes...\');\n    },\n  },\n  scripts: {\n    files: \'**/*.js\',\n    tasks: \'jshint\',\n  },\n},\n```\n\n#### options.atBegin\nType: `Boolean`\nDefault: false\n\nThis option will trigger the run of each specified task at startup of the watcher.\n\n#### options.livereload\nType: `Boolean|Number|Object`\nDefault: false\n\nSet to `true` or set `livereload: 1337` to a port number to enable live reloading. Default and recommended port is `35729`.\n\nIf enabled a live reload server will be started with the watch task per target. Then after the indicated tasks have ran, the live reload server will be triggered with the modified files.\n\nExample:\n```js\nwatch: {\n  css: {\n    files: \'**/*.sass\',\n    tasks: [\'sass\'],\n    options: {\n      livereload: true,\n    },\n  },\n},\n```\n\nIt\'s possible to get livereload working over https connections. To do this, pass an object to `livereload` with a `key` and `cert` paths specified.\n\nExample:\n```js\nwatch: {\n  css: {\n    files: \'**/*.sass\',\n    tasks: [\'sass\'],\n    options: {\n      livereload: {\n        port: 9000,\n        key: grunt.file.read(\'path/to/ssl.key\'),\n        cert: grunt.file.read(\'path/to/ssl.crt\')\n        // you can pass in any other options you\'d like to the https server, as listed here: http://nodejs.org/api/tls.html#tls_tls_createserver_options_secureconnectionlistener\n      }\n    },\n  },\n},\n```\n\n\n#### options.cwd\nType: `String|Object`\nDefault: `process.cwd()`\n\nAbility to set the current working directory. Defaults to `process.cwd()`. Can either be a string to set the cwd to match files and spawn tasks. Or an object to set each independently. Such as `options: { cwd: { files: \'match/files/from/here\', spawn: \'but/spawn/files/from/here\' } }`.\n\n#### options.livereloadOnError\nType: `Boolean`  \nDefault: `true`  \n\nOption to prevent the livereload if the executed tasks encountered an error.  If set to `false`, the livereload will only be triggered if all tasks completed successfully.\n\n### Examples\n\n```js\n// Simple config to run jshint any time a file is added, changed or deleted\ngrunt.initConfig({\n  watch: {\n    files: [\'**/*\'],\n    tasks: [\'jshint\'],\n  },\n});\n```\n\n```js\n// Advanced config. Run specific tasks when specific files are added, changed or deleted.\ngrunt.initConfig({\n  watch: {\n    gruntfile: {\n      files: \'Gruntfile.js\',\n      tasks: [\'jshint:gruntfile\'],\n    },\n    src: {\n      files: [\'lib/*.js\', \'css/**/*.scss\', \'!lib/dontwatch.js\'],\n      tasks: [\'default\'],\n    },\n    test: {\n      files: \'<%= jshint.test.src %>\',\n      tasks: [\'jshint:test\', \'qunit\'],\n    },\n  },\n});\n```\n\n#### Using the `watch` event\nThis task will emit a `watch` event when watched files are modified. This is useful if you would like a simple notification when files are edited or if you\'re using this task in tandem with another task. Here is a simple example using the `watch` event:\n\n```js\ngrunt.initConfig({\n  watch: {\n    scripts: {\n      files: [\'lib/*.js\'],\n    },\n  },\n});\ngrunt.event.on(\'watch\', function(action, filepath, target) {\n  grunt.log.writeln(target + \': \' + filepath + \' has \' + action);\n});\n```\n\n**The `watch` event is not intended for replacing the standard Grunt API for configuring and running tasks. If you\'re trying to run tasks from within the `watch` event you\'re more than likely doing it wrong. Please read [configuring tasks](http://gruntjs.com/configuring-tasks).**\n\n##### Compiling Files As Needed\nA very common request is to only compile files as needed. Here is an example that will only lint changed files with the `jshint` task:\n\n```js\ngrunt.initConfig({\n  watch: {\n    scripts: {\n      files: [\'lib/*.js\'],\n      tasks: [\'jshint\'],\n      options: {\n        spawn: false,\n      },\n    },\n  },\n  jshint: {\n    all: {\n      src: [\'lib/*.js\'],\n    },\n  },\n});\n\n// on watch events configure jshint:all to only run on changed file\ngrunt.event.on(\'watch\', function(action, filepath) {\n  grunt.config(\'jshint.all.src\', filepath);\n});\n```\n\nIf you need to dynamically modify your config, the `spawn` option must be disabled to keep the watch running under the same context.\n\nIf you save multiple files simultaneously you may opt for a more robust method:\n\n```js\nvar changedFiles = Object.create(null);\nvar onChange = grunt.util._.debounce(function() {\n  grunt.config(\'jshint.all.src\', Object.keys(changedFiles));\n  changedFiles = Object.create(null);\n}, 200);\ngrunt.event.on(\'watch\', function(action, filepath) {\n  changedFiles[filepath] = action;\n  onChange();\n});\n```\n\n#### Live Reloading\nLive reloading is built into the watch task. Set the option `livereload` to `true` to enable on the default port `35729` or set to a custom port: `livereload: 1337`.\n\nThe simplest way to add live reloading to all your watch targets is by setting `livereload` to `true` at the task level. This will run a single live reload server and trigger the live reload for all your watch targets:\n\n```js\ngrunt.initConfig({\n  watch: {\n    options: {\n      livereload: true,\n    },\n    css: {\n      files: [\'public/scss/*.scss\'],\n      tasks: [\'compass\'],\n    },\n  },\n});\n```\n\nYou can also configure live reload for individual watch targets or run multiple live reload servers. Just be sure if you\'re starting multiple servers they operate on different ports:\n\n```js\ngrunt.initConfig({\n  watch: {\n    css: {\n      files: [\'public/scss/*.scss\'],\n      tasks: [\'compass\'],\n      options: {\n        // Start a live reload server on the default port 35729\n        livereload: true,\n      },\n    },\n    another: {\n      files: [\'lib/*.js\'],\n      tasks: [\'anothertask\'],\n      options: {\n        // Start another live reload server on port 1337\n        livereload: 1337,\n      },\n    },\n    dont: {\n      files: [\'other/stuff/*\'],\n      tasks: [\'dostuff\'],\n    },\n  },\n});\n```\n\n##### Enabling Live Reload in Your HTML\nOnce you\'ve started a live reload server you\'ll be able to access the live reload script. To enable live reload on your page, add a script tag before your closing `</body>` tag pointing to the `livereload.js` script:\n\n```html\n<script src="//localhost:35729/livereload.js"></script>\n```\n\nFeel free to add this script to your template situation and toggle with some sort of `dev` flag.\n\n##### Using Live Reload with the Browser Extension\nInstead of adding a script tag to your page, you can live reload your page by installing a browser extension. Please visit [how do I install and use the browser extensions](http://feedback.livereload.com/knowledgebase/articles/86242-how-do-i-install-and-use-the-browser-extensions-) for help installing an extension for your browser.\n\nOnce installed please use the default live reload port `35729` and the browser extension will automatically reload your page without needing the `<script>` tag.\n\n##### Using Connect Middleware\nSince live reloading is used when developing, you may want to disable building for production (and are not using the browser extension). One method is to use Connect middleware to inject the script tag into your page. Try the [connect-livereload](https://github.com/intesso/connect-livereload) middleware for injecting the live reload script into your page.\n\n##### Rolling Your Own Live Reload\nLive reloading is made easy by the library [tiny-lr](https://github.com/mklabs/tiny-lr). It is encouraged to read the documentation for `tiny-lr`. If you would like to trigger the live reload server yourself, simply POST files to the URL: `http://localhost:35729/changed`. Or if you rather roll your own live reload implementation use the following example:\n\n```js\n// Create a live reload server instance\nvar lrserver = require(\'tiny-lr\')();\n\n// Listen on port 35729\nlrserver.listen(35729, function(err) { console.log(\'LR Server Started\'); });\n\n// Then later trigger files or POST to localhost:35729/changed\nlrserver.changed({body:{files:[\'public/css/changed.css\']}});\n```\n\n##### Live Reload with Preprocessors\nAny time a watched file is edited with the `livereload` option enabled, the file will be sent to the live reload server. Some edited files you may desire to have sent to the live reload server, such as when preprocessing (`sass`, `less`, `coffeescript`, etc). As any file not recognized will reload the entire page as opposed to just the `css` or `javascript`.\n\nThe solution is to point a `livereload` watch target to your destination files:\n\n```js\ngrunt.initConfig({\n  sass: {\n    dev: {\n      src: [\'src/sass/*.sass\'],\n      dest: \'dest/css/index.css\',\n    },\n  },\n  watch: {\n    sass: {\n      // We watch and compile sass files as normal but don\'t live reload here\n      files: [\'src/sass/*.sass\'],\n      tasks: [\'sass\'],\n    },\n    livereload: {\n      // Here we watch the files the sass task will compile to\n      // These files are sent to the live reload server after sass compiles to them\n      options: { livereload: true },\n      files: [\'dest/**/*\'],\n    },\n  },\n});\n```\n\n### FAQs\n\n#### How do I fix the error `EMFILE: Too many opened files.`?\nThis is because of your system\'s max opened file limit. For OSX the default is very low (256). Temporarily increase your limit with `ulimit -n 10480`, the number being the new max limit.\n\nIn some versions of OSX the above solution doesn\'t work. In that case try `launchctl limit maxfiles 10480 10480 ` and restart your terminal. See [here](http://superuser.com/questions/261023/how-to-change-default-ulimit-values-in-mac-os-x-10-6).\n\n#### Can I use this with Grunt v0.3?\n`grunt-contrib-watch@0.1.x` is compatible with Grunt v0.3 but it is highly recommended to upgrade Grunt instead.\n\n#### Why is the watch devouring all my memory/cpu?\nLikely because of an enthusiastic pattern trying to watch thousands of files. Such as `\'**/*.js\'` but forgetting to exclude the `node_modules` folder with `\'!**/node_modules/**\'`. Try grouping your files within a subfolder or be more explicit with your file matching pattern.\n\nAnother reason if you\'re watching a large number of files could be the low default `interval`. Try increasing with `options: { interval: 5007 }`. Please see issues [#35](https://github.com/gruntjs/grunt-contrib-watch/issues/145) and [#145](https://github.com/gruntjs/grunt-contrib-watch/issues/145) for more information.\n\n#### Why spawn as child processes as a default?\nThe goal of this watch task is as files are changed, run tasks as if they were triggered by the user themself. Each time a user runs `grunt` a process is spawned and tasks are ran in succession. In an effort to keep the experience consistent and continually produce expected results, this watch task spawns tasks as child processes by default.\n\nSandboxing task runs also allows this watch task to run more stable over long periods of time. As well as more efficiently with more complex tasks and file structures.\n\nSpawning does cause a performance hit (usually 500ms for most environments). It also cripples tasks that rely on the watch task to share the context with each subsequent run (i.e., reload tasks). If you would like a faster watch task or need to share the context please set the `spawn` option to `false`. Just be aware that with this option enabled, the watch task is more prone to failure.\n\n\n## Release History\n\n * 2014-03-19   v0.6.1   Fix for watch targets named "default"\n * 2014-03-11   v0.6.0   Clear changed files after triggering live reload to ensure they\'re only triggered once. cwd option now accepts separate settings for files and spawn. Fix to make interrupt work more than once. Enable live reload over HTTPS. Print newline after initial \'Waiting...\' Remove deprecated grunt.util libs Add reload option to specify files other than Gruntfile files to reload. Update to gaze@0.5.1 Use fork of tiny-lr (which has quiter operation, support for HTTPS and windows path fixes) Add livereloadOnError, which if set to false will not trigger live reload if there is an error.\n * 2013-08-25   v0.5.3   Fixed for live reload missing files.\n * 2013-08-16   v0.5.2   Fixed issue running tasks after gruntfile is reloaded. Ignores empty file paths.\n * 2013-07-20   v0.5.1   Fixed issue with options resetting.\n * 2013-07-18   v0.5.0   Added target name to watch event. Added atBegin option to run tasks when watcher starts. Changed nospawn option to spawn (nospawn still available for backwards compatibility). Moved libs/vars into top scope to prevent re-init. Bumped Gaze version to ~0.4. Re-grab task/target options upon each task run. Add dateFormat option to override the date/time output upon completion.\n * 2013-05-27   v0.4.4   Remove gracefully closing SIGINT. Not needed and causes problems for Windows. Ensure tasks are an array to not conflict with cliArgs.\n * 2013-05-11   v0.4.3   Only group changed files per target to send correct files to live reload.\n * 2013-05-09   v0.4.2   Fix for closing watchers.\n * 2013-05-09   v0.4.1   Removed "beep" notification. Tasks now optional with livereload option. Reverted "run again" with interrupt off to fix infinite recursion issue. Watchers now close more properly on task run.\n * 2013-05-03   v0.4.0   Option livereload to start live reload servers. Will reload a Gruntfile before running tasks if Gruntfile is modified. Option event to only trigger watch on certain events. Refactor watch task into separate task runs per target. Option forever to override grunt.fatal/warn to help keeping the watch alive with nospawn enabled. Emit a beep upon complete. Logs all watched files with verbose flag set. If interrupt is off, will run the tasks once more if watch triggered during a previous task run. tasks property is optional for use with watch event. Watchers properly closed when exiting.\n * 2013-02-28   v0.3.1   Fix for top level options.\n * 2013-02-27   v0.3.0   nospawn option added to run tasks without spawning as child processes. Watch emits \'watch\' events upon files being triggered with grunt.event. Completion time in seconds and date/time shown after tasks ran. Negate file patterns fixed. Tasks debounced individually to handle simultaneous triggering for multiple targets. Errors handled better and viewable with --stack cli option. Code complexity reduced making the watch task code easier to read.\n * 2013-02-15   v0.2.0   First official release for Grunt 0.4.0.\n * 2013-01-18   v0.2.0rc7   Updating grunt/gruntplugin dependencies to rc6. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.\n * 2013-01-09   v0.2.0rc5   Updating to work with grunt v0.4.0rc5.\n * 2012-12-15   v0.2.0a   Conversion to grunt v0.4 conventions. Remove node v0.6 and grunt v0.3 support. Allow watch task to be renamed. Use grunt.util.spawn "grunt" option. Updated to gaze@0.3.0, forceWatchMethod option removed.\n * 2012-11-01   v0.1.4   Prevent watch from spawning duplicate watch tasks\n * 2012-10-28   v0.1.3   Better method to spawn the grunt bin Bump gaze to v0.2.0. Better handles some events and new option forceWatchMethod Only support Node.js >= v0.8\n * 2012-10-17   v0.1.2   Only spawn a process per task one at a time Add interrupt option to cancel previous spawned process Grunt v0.3 compatibility changes\n * 2012-10-16   v0.1.1   Fallback to global grunt bin if local doesnt exist. Fatal if bin cannot be found Update to gaze 0.1.6\n * 2012-10-08   v0.1.0   Release watch task Remove spawn from helper Run on Grunt v0.4\n\n---\n\nTask submitted by [Kyle Robinson Young](http://dontkry.com)\n\n*This file was generated on Wed Mar 19 2014 13:09:11.*\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     _id: 'grunt-contrib-watch@0.6.1',
+234 silly resolved     _from: 'grunt-contrib-watch@~0.6.1' },
+234 silly resolved   { name: 'grunt-contrib-copy',
+234 silly resolved     description: 'Copy files and folders.',
+234 silly resolved     version: '0.7.0',
+234 silly resolved     homepage: 'https://github.com/gruntjs/grunt-contrib-copy',
+234 silly resolved     author: { name: 'Grunt Team', url: 'http://gruntjs.com/' },
+234 silly resolved     repository:
+234 silly resolved      { type: 'git',
+234 silly resolved        url: 'git://github.com/gruntjs/grunt-contrib-copy.git' },
+234 silly resolved     bugs: { url: 'https://github.com/gruntjs/grunt-contrib-copy/issues' },
+234 silly resolved     licenses: [ [Object] ],
+234 silly resolved     engines: { node: '>= 0.8.0' },
+234 silly resolved     scripts: { test: 'grunt test' },
+234 silly resolved     dependencies: { chalk: '~0.5.1' },
+234 silly resolved     devDependencies:
+234 silly resolved      { 'grunt-contrib-jshint': '~0.10.0',
+234 silly resolved        'grunt-contrib-nodeunit': '~0.4.1',
+234 silly resolved        'grunt-contrib-clean': '~0.6.0',
+234 silly resolved        'grunt-contrib-internal': '~0.4.5',
+234 silly resolved        grunt: '~0.4.0' },
+234 silly resolved     peerDependencies: { grunt: '~0.4.0' },
+234 silly resolved     keywords: [ 'gruntplugin' ],
+234 silly resolved     files: [ 'tasks', 'LICENSE-MIT' ],
+234 silly resolved     readme: '# grunt-contrib-copy v0.7.0 [![Build Status: Linux](https://travis-ci.org/gruntjs/grunt-contrib-copy.png?branch=master)](https://travis-ci.org/gruntjs/grunt-contrib-copy)\n\n> Copy files and folders.\n\n\n\n## Getting Started\nThis plugin requires Grunt `~0.4.0`\n\nIf you haven\'t used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you\'re familiar with that process, you may install this plugin with this command:\n\n```shell\nnpm install grunt-contrib-copy --save-dev\n```\n\nOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:\n\n```js\ngrunt.loadNpmTasks(\'grunt-contrib-copy\');\n```\n\n*This plugin was designed to work with Grunt 0.4.x. If you\'re still using grunt v0.3.x it\'s strongly recommended that [you upgrade](http://gruntjs.com/upgrading-from-0.3-to-0.4), but in case you can\'t please use [v0.3.2](https://github.com/gruntjs/grunt-contrib-copy/tree/grunt-0.3-stable).*\n\n\n\n## Copy task\n_Run this task with the `grunt copy` command._\n\nTask targets, files and options may be specified according to the grunt [Configuring tasks](http://gruntjs.com/configuring-tasks) guide.\n### Options\n\n#### process\nType: `Function(content, srcpath)`\n\nThis option is passed to `grunt.file.copy` as an advanced way to control the file contents that are copied.\n\n*`processContent` has been renamed to `process` and the option name will be removed in the future.*\n\n#### noProcess\nType: `String`\n\nThis option is passed to `grunt.file.copy` as an advanced way to control which file contents are processed.\n\n*`processContentExclude` has been renamed to `noProcess` and the option name will be removed in the future.*\n\n#### encoding\nType: `String`  \nDefault: `grunt.file.defaultEncoding`\n\nThe file encoding to copy files with.\n\n#### mode\nType: `Boolean` or `Number`  \nDefault: `false`\n\nWhether to copy or set the existing file permissions. Set to `true` to copy the existing file permissions. Or set to the mode, i.e.: `0644`, that copied files will be set to.\n\n#### timestamp\nType: `Boolean`\nDefault: `false`\n\nWhether to preserve the timestamp attributes(`atime` and `mtime`) when copying files. Set to `true` to preserve files timestamp. But timestamp will *not* be preserved when the file contents or name are changed during copying.\n\n### Usage Examples\n\n```js\ncopy: {\n  main: {\n    files: [\n      // includes files within path\n      {expand: true, src: [\'path/*\'], dest: \'dest/\', filter: \'isFile\'},\n\n      // includes files within path and its sub-directories\n      {expand: true, src: [\'path/**\'], dest: \'dest/\'},\n\n      // makes all src relative to cwd\n      {expand: true, cwd: \'path/\', src: [\'**\'], dest: \'dest/\'},\n\n      // flattens results to a single level\n      {expand: true, flatten: true, src: [\'path/**\'], dest: \'dest/\', filter: \'isFile\'},\n    ],\n  },\n},\n```\n\nThis task supports all the file mapping format Grunt supports. Please read [Globbing patterns](http://gruntjs.com/configuring-tasks#globbing-patterns) and [Building the files object dynamically](http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically) for additional details.\n\nHere are some additional examples, given the following file tree:\n```shell\n$ tree -I node_modules\n.\n├── Gruntfile.js\n└── src\n    ├── a\n    └── subdir\n        └── b\n\n2 directories, 3 files\n```\n\n**Copy a single file tree:**\n```js\ncopy: {\n  main: {\n    src: \'src/*\',\n    dest: \'dest/\',\n  },\n},\n```\n\n```shell\n$ grunt copy\nRunning "copy:main" (copy) task\nCreated 1 directories, copied 1 files\n\nDone, without errors.\n$ tree -I node_modules\n.\n├── Gruntfile.js\n├── dest\n│   └── src\n│       ├── a\n│       └── subdir\n└── src\n    ├── a\n    └── subdir\n        └── b\n\n5 directories, 4 files\n```\n\n**Flattening the filepath output:**\n\n```js\ncopy: {\n  main: {\n    expand: true,\n    cwd: \'src/\',\n    src: \'**\',\n    dest: \'dest/\',\n    flatten: true,\n    filter: \'isFile\',\n  },\n},\n```\n\n```shell\n$ grunt copy\nRunning "copy:main" (copy) task\nCopied 2 files\n\nDone, without errors.\n$ tree -I node_modules\n.\n├── Gruntfile.js\n├── dest\n│   ├── a\n│   └── b\n└── src\n    ├── a\n    └── subdir\n        └── b\n\n3 directories, 5 files\n```\n\n\n**Copy and modify a file:**\n\nTo change the contents of a file as it is copied, set an `options.process` function as follows:\n\n```js\ncopy: {\n  main: {\n    src: \'src/a\',\n    dest: \'src/a.bak\',\n    options: {\n      process: function (content, srcpath) {\n        return content.replace(/[sad ]/g,"_");\n      },\n    },\n  },\n},\n```\n\nHere all occurences of the letters "s", "a" and "d", as well as all spaces, will be changed to underlines in "a.bak". Of course, you are not limited to just using regex replacements.\n\nTo process all files in a directory, the `process` function is used in exactly the same way.\n\nNOTE: If `process` is not working, be aware it was called `processContent` in v0.4.1 and earlier.\n\n\n##### Troubleshooting\n\nBy default, if a file or directory is not found it is quietly ignored. If the file should exist, and non-existence generate an error, then add `nonull:true`. For instance, this Gruntfile.js entry:\n\n```js\ncopy: {\n  main: {\n    nonull: true,\n    src: \'not-there\',\n    dest: \'create-me\',\n  },\n},\n```\n\ngives this output:\n\n```shell\n$ grunt copy\nRunning "copy:main" (copy) task\nWarning: Unable to read "not-there" file (Error code: ENOENT). Use --force to continue.\n\nAborted due to warnings.\n```\n\n\n\n## Release History\n\n * 2014-10-15   v0.7.0   Add timestamp option to disable preseving timestamp when copying.\n * 2014-09-17   v0.6.0   Update chalk dependency and other devDependencies. Preserve file timestamp when copying.\n * 2013-12-23   v0.5.0   If an encoding is specified, overwrite grunt.file.defaultEncoding. Rename processContent/processContentExclude to process/noProcess to match Grunt API. mode option to copy existing or set file permissions.\n * 2013-03-26   v0.4.1   Output summary by default ("Copied N files, created M folders"). Individual transaction output available via `--verbose`.\n * 2013-02-15   v0.4.0   First official release for Grunt 0.4.0.\n * 2013-01-23   v0.4.0rc7   Updating grunt/gruntplugin dependencies to rc7. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.\n * 2013-01-14   v0.4.0rc5   Updating to work with grunt v0.4.0rc5. Conversion to grunt v0.4 conventions. Replace basePath with cwd. Empty directory support.\n * 2012-10-18   v0.3.2   Pass copyOptions on single file copy.\n * 2012-10-12   v0.3.1   Rename grunt-contrib-lib dep to grunt-lib-contrib.\n * 2012-09-24   v0.3.0   General cleanup and consolidation. Global options depreciated.\n * 2012-09-18   v0.2.4   No valid source check.\n * 2012-09-17   v0.2.3   Path.sep fallback for node <= 0.7.9.\n * 2012-09-17   v0.2.2   Single file copy support. Test refactoring.\n * 2012-09-07   v0.2.0   Refactored from grunt-contrib into individual repo.\n\n---\n\nTask submitted by [Chris Talkington](http://christalkington.com/)\n\n*This file was generated on Wed Oct 15 2014 09:29:35.*\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     _id: 'grunt-contrib-copy@0.7.0',
+234 silly resolved     _from: 'grunt-contrib-copy@~0.7.0' },
+234 silly resolved   { name: 'node-sass',
+234 silly resolved     version: '1.2.3',
+234 silly resolved     description: 'Wrapper around libsass',
+234 silly resolved     license: 'MIT',
+234 silly resolved     homepage: 'https://github.com/sass/node-sass',
+234 silly resolved     repository: { type: 'git', url: 'git://github.com/sass/node-sass' },
+234 silly resolved     author:
+234 silly resolved      { name: 'Andrew Nesbitt',
+234 silly resolved        email: 'andrewnez@gmail.com',
+234 silly resolved        url: 'http://andrew.github.com' },
+234 silly resolved     engines: { node: '>=0.10.0' },
+234 silly resolved     main: 'lib/index.js',
+234 silly resolved     bin: { 'node-sass': 'bin/node-sass' },
+234 silly resolved     gypfile: true,
+234 silly resolved     scripts:
+234 silly resolved      { coverage: 'node scripts/coverage.js',
+234 silly resolved        install: 'node scripts/install.js',
+234 silly resolved        postinstall: 'node scripts/build.js',
+234 silly resolved        pretest: 'jshint bin lib test',
+234 silly resolved        test: 'mocha test' },
+234 silly resolved     files: [ 'bin', 'binding.gyp', 'lib', 'scripts', 'src', 'test' ],
+234 silly resolved     keywords: [ 'css', 'libsass', 'preprocessor', 'sass', 'scss', 'style' ],
+234 silly resolved     dependencies:
+234 silly resolved      { chalk: '^0.5.1',
+234 silly resolved        'cross-spawn': '^0.2.3',
+234 silly resolved        gaze: '^0.5.1',
+234 silly resolved        'get-stdin': '^3.0.0',
+234 silly resolved        meow: '^2.0.0',
+234 silly resolved        mkdirp: '^0.5.0',
+234 silly resolved        mocha: '^2.0.1',
+234 silly resolved        nan: '^1.3.0',
+234 silly resolved        'object-assign': '^1.0.0',
+234 silly resolved        'replace-ext': '0.0.1',
+234 silly resolved        request: '^2.48.0',
+234 silly resolved        shelljs: '^0.3.0' },
+234 silly resolved     devDependencies:
+234 silly resolved      { coveralls: '^2.11.1',
+234 silly resolved        jscoverage: '^0.5.6',
+234 silly resolved        jshint: '^2.5.5',
+234 silly resolved        'mocha-lcov-reporter': '^0.0.1' },
+234 silly resolved     readme: '# node-sass\n\n![logo](https://rawgit.com/sass/node-sass/master/media/logo.svg)\n\n[![Build Status](https://travis-ci.org/sass/node-sass.svg?branch=master&style=flat)](https://travis-ci.org/sass/node-sass)\n[![Build status](https://ci.appveyor.com/api/projects/status/22mjbk59kvd55m9y/branch/master)](https://ci.appveyor.com/project/sass/node-sass/branch/master)\n[![npm version](https://badge.fury.io/js/node-sass.svg)](http://badge.fury.io/js/node-sass)\n[![Dependency Status](https://david-dm.org/sass/node-sass.svg?theme=shields.io)](https://david-dm.org/sass/node-sass)\n[![devDependency Status](https://david-dm.org/sass/node-sass/dev-status.svg?theme=shields.io)](https://david-dm.org/sass/node-sass#info=devDependencies)\n[![Gitter chat](http://img.shields.io/badge/gitter-sass/node--sass-brightgreen.svg)](https://gitter.im/sass/node-sass)\n\nNode-sass is a library that provides binding for Node.js to [libsass], the C version of the popular stylesheet preprocessor, Sass.\n\nIt allows you to natively compile .scss files to css at incredible speed and automatically via a connect middleware.\n\nFind it on npm: <https://npmjs.org/package/node-sass>\n\nFollow @nodesass on twitter for release updates: https://twitter.com/nodesass\n\n## Reporting Sass compilation and syntax issues\n\nThe [libsass] library is not currently at feature parity with the 3.2 [Ruby Gem](https://github.com/nex3/sass) that most Sass users will use, and has little-to-no support for 3.3 syntax. While we try our best to maintain feature parity with [libsass], we can not enable features that have not been implemented in [libsass] yet.\n\nIf you\'d like to see what features are still upcoming in [libsass], [Jo Liss](http://twitter.com/jo_liss) has written [a blog post on the subject](http://www.solitr.com/blog/2014/01/state-of-libsass/).\n\nPlease check for [issues on the libsass repo](https://github.com/hcatlin/libsass/issues) (as there is a good chance that it may already be an issue there for it), and otherwise [create a new issue there](https://github.com/hcatlin/libsass/issues/new).\n\nIf this project is missing an API or command line flag that has been added to [libsass], then please open an issue here. We will then look at updating our [libsass] submodule and create a new release. You can help us create the new release by rebuilding binaries, and then creating a pull request to the [node-sass-binaries](https://github.com/sass/node-sass-binaries) repo.\n\n## Install\n\n    npm install node-sass\n\nSome users have reported issues installing on Ubuntu due to `node` being registered to another package. [Follow the official NodeJS docs](https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager) to install NodeJS so that `#!/usr/bin/env node` correctly resolved.\n\nCompiling versions 0.9.4 and above on Windows machines requires [Visual Studio 2013 WD](http://www.visualstudio.com/downloads/download-visual-studio-vs#d-express-windows-desktop). If you have multiple VS versions, use ```npm install``` with the ```--msvs_version=2013``` flag.\n\n## Usage\n\n```javascript\nvar sass = require(\'node-sass\');\nsass.render({\n\tfile: scss_filename,\n\tsuccess: callback\n\t[, options..]\n\t});\n// OR\nvar css = sass.renderSync({\n\tdata: scss_content\n\t[, options..]\n});\n```\n\n### Options\n\nThe API for using node-sass has changed, so that now there is only one variable - an options hash. Some of these options are optional, and in some circumstances some are mandatory.\n\n#### file\n`file` is a `String` of the path to an `scss` file for [libsass] to render. One of this or `data` options are required, for both render and renderSync.\n\n#### data\n`data` is a `String` containing the scss to be rendered by [libsass]. One of this or `file` options are required, for both render and renderSync. It is recommended that you use the `includePaths` option in conjunction with this, as otherwise [libsass] may have trouble finding files imported via the `@import` directive.\n\n#### success\n`success` is a `Function` to be called upon successful rendering of the scss to css. This option is required but only for the render function. If provided to renderSync it will be ignored.\n\n#### error\n`error` is a `Function` to be called upon occurance of an error when rendering the scss to css. This option is optional, and only applies to the render function. If provided to renderSync it will be ignored.\n\n#### includePaths\n`includePaths` is an `Array` of path `String`s to look for any `@import`ed files. It is recommended that you use this option if you are using the `data` option and have **any** `@import` directives, as otherwise [libsass] may not find your depended-on files.\n\n#### imagePath\n`imagePath` is a `String` that represents the public image path. When using the `image-url()` function in a stylesheet, this path will be prepended to the path you supply. eg. Given an `imagePath` of `/path/to/images`, `background-image: image-url(\'image.png\')` will compile to `background-image: url("/path/to/images/image.png")`\n\n#### outputStyle\n`outputStyle` is a `String` to determine how the final CSS should be rendered. Its value should be one of `\'nested\'` or `\'compressed\'`.\n[`\'expanded\'` and `\'compact\'` are not currently supported by [libsass]]\n\n#### precision\n`precision` is a `Number` that will be used to determine how many digits after the decimal will be allowed. For instance, if you had a decimal number of `1.23456789` and a precision of `5`, the result will be `1.23457` in the final CSS.\n\n#### sourceComments\n`sourceComments` is a `Boolean` flag to determine what debug information is included in the output file.\n\n#### omitSourceMapUrl\n`omitSourceMapUrl` is a `Boolean` flag to determine whether to include `sourceMappingURL` comment in the output file.\n\n#### sourceMap\nIf your `sourceComments` option is set to `map`, `sourceMap` allows setting a new path context for the referenced Sass files.\nThe source map describes a path from your CSS file location, into the the folder where the Sass files are located. In most occasions this will work out-of-the-box but, in some cases, you may need to set a different output.\n\n#### stats\n`stats` is an empty `Object` that will be filled with stats from the compilation:\n\n```javascript\n{\n    entry: "path/to/entry.scss",    // or just "data" if the source was not a file\n    start: 10000000,                // Date.now() before the compilation\n    end:   10000001,                // Date.now() after the compilation\n    duration: 1,                    // end - start\n    includedFiles: [ ... ],         // absolute paths to all related scss files\n    sourceMap: "..."                // the source map string or null\n}\n```\n\n`includedFiles` isn\'t sorted in any meaningful way, it\'s just a list of all imported scss files including the entry.\n\n### renderFile()\n\nSame as `render()` but writes the CSS and sourceMap (if requested) to the filesystem.\n\n#### outFile\n\n`outFile` specifies where to save the CSS.\n\n#### sourceMap\n\n`sourceMap` specifies that the source map should be saved.\n\n- If falsy the source map will not be saved\n- If `sourceMap === true` the source map will be saved to the\nstandard location of `path.basename(options.outFile) + \'.map\'`\n- Otherwise specifies the path (relative to the `outFile`)\nwhere the source map should be saved\n\n\n### Examples\n\n```javascript\nvar sass = require(\'node-sass\');\nvar stats = {};\nsass.render({\n\tdata: \'body{background:blue; a{color:black;}}\',\n\tsuccess: function(css) {\n        console.log(css);\n        console.log(stats);\n\t},\n\terror: function(error) {\n\t\tconsole.log(error);\n\t},\n\tincludePaths: [ \'lib/\', \'mod/\' ],\n\toutputStyle: \'compressed\',\n    stats: stats\n});\n// OR\nconsole.log(sass.renderSync({\n\tdata: \'body{background:blue; a{color:black;}}\',\n\toutputStyle: \'compressed\',\n    stats: stats\n}));\nconsole.log(stats);\n```\n\n### Edge-case behaviours\n\n* In the case that both `file` and `data` options are set, node-sass will only attempt to honour the `file` directive.\n\n\n## Integrations\n\nListing of community uses of node-sass in build tools and frameworks.\n\n### Brackets extension\n\n[@jasonsanjose](https://github.com/jasonsanjose) has created a [Brackets](http://brackets.io) extension based on node-sass: <https://github.com/jasonsanjose/brackets-sass>. When editing Sass files, the extension compiles changes on save. The extension also integrates with Live Preview to show Sass changes in the browser without saving or compiling.\n\n### Brunch plugin\n\n[Brunch](http://brunch.io)\'s official sass plugin uses node-sass by default, and automatically falls back to ruby if use of Compass is detected: <https://github.com/brunch/sass-brunch>\n\n### Connect/Express middleware\n\nRecompile `.scss` files automatically for connect and express based http servers.\n\nThis functionality has been moved to [`node-sass-middleware`](https://github.com/sass/node-sass-middleware) in node-sass v1.0.0\n\n### DocPad Plugin\n\n[@jking90](https://github.com/jking90) wrote a [DocPad](http://docpad.org/) plugin that compiles `.scss` files using node-sass: <https://github.com/jking90/docpad-plugin-nodesass>\n\n### Duo.js extension\n\n[@stephenway](https://github.com/stephenway) has created an extension that transpiles Sass to CSS using node-sass with [duo.js](http://duojs.org/)\n<https://github.com/duojs/sass>\n\n### Grunt extension\n\n[@sindresorhus](https://github.com/sindresorhus/) has created a set of grunt tasks based on node-sass: <https://github.com/sindresorhus/grunt-sass>\n\n### Gulp extension\n\n[@dlmanning](https://github.com/dlmanning/) has created a gulp sass plugin based on node-sass: <https://github.com/dlmanning/gulp-sass>\n\n### Harp\n\n[@sintaxi](https://github.com/sintaxi)’s Harp web server implicitly compiles `.scss` files using node-sass: <https://github.com/sintaxi/harp>\n\n### Metalsmith plugin\n\n[@stevenschobert](https://github.com/stevenschobert/) has created a metalsmith plugin based on node-sass: <https://github.com/stevenschobert/metalsmith-sass>\n\n### Meteor plugin\n\n[@fourseven](https://github.com/fourseven) has created a meteor plugin based on node-sass: <https://github.com/fourseven/meteor-scss>\n\n### Mimosa module\n\n[@dbashford](https://github.com/dbashford) has created a Mimosa module for sass which includes node-sass: <https://github.com/dbashford/mimosa-sass>\n\n## Example App\n\nThere is also an example connect app here: <https://github.com/andrew/node-sass-example>\n\n## Rebuilding binaries\n\nNode-sass includes pre-compiled binaries for popular platforms, to add a binary for your platform follow these steps:\n\nCheck out the project:\n\n    git clone --recursive https://github.com/sass/node-sass.git\n    cd node-sass\n    git submodule update --init --recursive\n    npm install\n    npm install -g node-gyp\n    node-gyp rebuild\n\n## Command Line Interface\n\nThe interface for command-line usage is fairly simplistic at this stage, as seen in the following usage section.\n\nOutput will be saved with the same name as input SASS file into the current working directory if it\'s omitted.\n\n### Usage\n `node-sass [options] <input.scss> [<output.css>]`\n\n **Options:**\n\n      --output-style         CSS output style (nested|expanded|compact|compressed)  [default: "nested"]\n      --source-comments      Include debug info in output                           [default: false]\n      --omit-source-map-url  Omit source map URL comment from output                [default: false]\n      --include-path         Path to look for @import-ed files                      [default: cwd]\n      --help, -h             Print usage info\n\n## Post-install Build\n\nInstall runs a series of Mocha tests to see if your machine can use the pre-built [libsass] which will save some time during install. If any tests fail it will build from source.\n\nIf you know the pre-built version will work and do not want to wait for the tests to run you can skip the tests by setting the environment variable `SKIP_NODE_SASS_TESTS` to true.\n\n      SKIP_NODE_SASS_TESTS=true npm install\n\n## Maintainers\n\nThis module is brought to you and maintained by the following people:\n\n* Andrew Nesbitt ([Github](https://github.com/andrew) / [Twitter](https://twitter.com/teabass))\n* Dean Mao ([Github](https://github.com/deanmao) / [Twitter](https://twitter.com/deanmao))\n* Brett Wilkins ([Github](https://github.com/bwilkins) / [Twitter](https://twitter.com/bjmaz))\n* Keith Cirkel ([Github](https://github.com/keithamus) / [Twitter](https://twitter.com/Keithamus))\n* Laurent Goderre ([Github](https://github.com/laurentgoderre) / [Twitter](https://twitter.com/laurentgoderre))\n* Nick Schonning ([Github](https://github.com/nschonni) / [Twitter](https://twitter.com/nschonni))\n* Adam Yeats ([Github](https://github.com/adamyeats) / [Twitter](https://twitter.com/adamyeats))\n\n## Contributors\n\nWe <3 our contributors! A special thanks to all those who have clocked in some dev time on this project, we really appreciate your hard work. You can find [a full list of those people here.](https://github.com/sass/node-sass/graphs/contributors)\n\n### Note on Patches/Pull Requests\n\n * Fork the project.\n * Make your feature addition or bug fix.\n * Add documentation if necessary.\n * Add tests for it. This is important so I don\'t break it in a future version unintentionally.\n * Send a pull request. Bonus points for topic branches.\n\n## Copyright\n\nCopyright (c) 2013 Andrew Nesbitt. See [LICENSE](https://github.com/sass/node-sass/blob/master/LICENSE) for details.\n\n[libsass]: https://github.com/hcatlin/libsass\n',
+234 silly resolved     readmeFilename: 'README.md',
+234 silly resolved     bugs: { url: 'https://github.com/sass/node-sass/issues' },
+234 silly resolved     _id: 'node-sass@1.2.3',
+234 silly resolved     _from: 'node-sass@~1.2.3' } ]
+235 info install grunt-sass@0.17.0 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+236 info install grunt@0.4.5 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+237 info install grunt-contrib-uglify@0.7.0 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+238 info install grunt-contrib-concat@0.5.1 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+239 info install grunt-contrib-watch@0.6.1 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+240 info install grunt-contrib-copy@0.7.0 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+241 info install node-sass@1.2.3 into /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+242 info installOne grunt-sass@0.17.0
+243 info installOne grunt@0.4.5
+244 info installOne grunt-contrib-uglify@0.7.0
+245 info installOne grunt-contrib-concat@0.5.1
+246 info installOne grunt-contrib-watch@0.6.1
+247 info installOne grunt-contrib-copy@0.7.0
+248 info installOne node-sass@1.2.3
+249 verbose node_modules/grunt-sass unbuild
+250 verbose node_modules/grunt unbuild
+251 verbose node_modules/grunt-contrib-uglify unbuild
+252 verbose node_modules/node-sass unbuild
+253 verbose node_modules/grunt-contrib-concat unbuild
+254 verbose node_modules/grunt-contrib-watch unbuild
+255 verbose node_modules/grunt-contrib-copy unbuild
+256 verbose tar unpack /home/steve/.npm/grunt-contrib-uglify/0.7.0/package.tgz
+257 silly lockFile 285abdee-ode-modules-grunt-contrib-uglify tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify
+258 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify /home/steve/.npm/285abdee-ode-modules-grunt-contrib-uglify.lock
+259 silly lockFile 1644610d-contrib-uglify-0-7-0-package-tgz tar:///home/steve/.npm/grunt-contrib-uglify/0.7.0/package.tgz
+260 verbose lock tar:///home/steve/.npm/grunt-contrib-uglify/0.7.0/package.tgz /home/steve/.npm/1644610d-contrib-uglify-0-7-0-package-tgz.lock
+261 verbose tar unpack /home/steve/.npm/node-sass/1.2.3/package.tgz
+262 silly lockFile 3f15f9cb-FairEmmet-node-modules-node-sass tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/node-sass
+263 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/node-sass /home/steve/.npm/3f15f9cb-FairEmmet-node-modules-node-sass.lock
+264 silly lockFile 568da3da--npm-node-sass-1-2-3-package-tgz tar:///home/steve/.npm/node-sass/1.2.3/package.tgz
+265 verbose lock tar:///home/steve/.npm/node-sass/1.2.3/package.tgz /home/steve/.npm/568da3da--npm-node-sass-1-2-3-package-tgz.lock
+266 verbose tar unpack /home/steve/.npm/grunt-sass/0.17.0/package.tgz
+267 silly lockFile f233fe55-airEmmet-node-modules-grunt-sass tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-sass
+268 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-sass /home/steve/.npm/f233fe55-airEmmet-node-modules-grunt-sass.lock
+269 silly lockFile 13fefaa1-pm-grunt-sass-0-17-0-package-tgz tar:///home/steve/.npm/grunt-sass/0.17.0/package.tgz
+270 verbose lock tar:///home/steve/.npm/grunt-sass/0.17.0/package.tgz /home/steve/.npm/13fefaa1-pm-grunt-sass-0-17-0-package-tgz.lock
+271 verbose tar unpack /home/steve/.npm/grunt/0.4.5/package.tgz
+272 silly lockFile 01feded3-mes-FairEmmet-node-modules-grunt tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt
+273 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt /home/steve/.npm/01feded3-mes-FairEmmet-node-modules-grunt.lock
+274 silly lockFile 9e775b63-teve-npm-grunt-0-4-5-package-tgz tar:///home/steve/.npm/grunt/0.4.5/package.tgz
+275 verbose lock tar:///home/steve/.npm/grunt/0.4.5/package.tgz /home/steve/.npm/9e775b63-teve-npm-grunt-0-4-5-package-tgz.lock
+276 verbose tar unpack /home/steve/.npm/grunt-contrib-copy/0.7.0/package.tgz
+277 silly lockFile 21f7f11f--node-modules-grunt-contrib-copy tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-copy
+278 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-copy /home/steve/.npm/21f7f11f--node-modules-grunt-contrib-copy.lock
+279 silly lockFile d271d364-t-contrib-copy-0-7-0-package-tgz tar:///home/steve/.npm/grunt-contrib-copy/0.7.0/package.tgz
+280 verbose lock tar:///home/steve/.npm/grunt-contrib-copy/0.7.0/package.tgz /home/steve/.npm/d271d364-t-contrib-copy-0-7-0-package-tgz.lock
+281 verbose tar unpack /home/steve/.npm/grunt-contrib-concat/0.5.1/package.tgz
+282 silly lockFile 155b4b48-ode-modules-grunt-contrib-concat tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-concat
+283 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-concat /home/steve/.npm/155b4b48-ode-modules-grunt-contrib-concat.lock
+284 silly lockFile 0deeb6e5-contrib-concat-0-5-1-package-tgz tar:///home/steve/.npm/grunt-contrib-concat/0.5.1/package.tgz
+285 verbose lock tar:///home/steve/.npm/grunt-contrib-concat/0.5.1/package.tgz /home/steve/.npm/0deeb6e5-contrib-concat-0-5-1-package-tgz.lock
+286 verbose tar unpack /home/steve/.npm/grunt-contrib-watch/0.6.1/package.tgz
+287 silly lockFile d0eecc25-node-modules-grunt-contrib-watch tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-watch
+288 verbose lock tar:///home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-watch /home/steve/.npm/d0eecc25-node-modules-grunt-contrib-watch.lock
+289 silly lockFile 8e918526--contrib-watch-0-6-1-package-tgz tar:///home/steve/.npm/grunt-contrib-watch/0.6.1/package.tgz
+290 verbose lock tar:///home/steve/.npm/grunt-contrib-watch/0.6.1/package.tgz /home/steve/.npm/8e918526--contrib-watch-0-6-1-package-tgz.lock
+291 silly gunzTarPerm modes [ '770', '660' ]
+292 silly gunzTarPerm modes [ '770', '660' ]
+293 silly gunzTarPerm modes [ '770', '660' ]
+294 silly gunzTarPerm modes [ '770', '660' ]
+295 silly gunzTarPerm modes [ '770', '660' ]
+296 silly gunzTarPerm modes [ '770', '660' ]
+297 silly gunzTarPerm modes [ '770', '660' ]
+298 silly gunzTarPerm extractEntry package.json
+299 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+300 silly gunzTarPerm extractEntry package.json
+301 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+302 silly gunzTarPerm extractEntry package.json
+303 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+304 silly gunzTarPerm extractEntry package.json
+305 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+306 silly gunzTarPerm extractEntry package.json
+307 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+308 silly gunzTarPerm extractEntry package.json
+309 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+310 silly gunzTarPerm extractEntry package.json
+311 silly gunzTarPerm modified mode [ 'package.json', 420, 432 ]
+312 silly gunzTarPerm extractEntry README.md
+313 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+314 silly gunzTarPerm extractEntry LICENSE-MIT
+315 silly gunzTarPerm modified mode [ 'LICENSE-MIT', 420, 432 ]
+316 silly gunzTarPerm extractEntry tasks/uglify.js
+317 silly gunzTarPerm modified mode [ 'tasks/uglify.js', 420, 432 ]
+318 silly gunzTarPerm extractEntry tasks/lib/uglify.js
+319 silly gunzTarPerm modified mode [ 'tasks/lib/uglify.js', 420, 432 ]
+320 silly gunzTarPerm extractEntry .npmignore
+321 silly gunzTarPerm modified mode [ '.npmignore', 420, 432 ]
+322 silly gunzTarPerm extractEntry README.md
+323 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+324 silly gunzTarPerm extractEntry README.md
+325 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+326 silly gunzTarPerm extractEntry README.md
+327 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+328 silly gunzTarPerm extractEntry LICENSE-MIT
+329 silly gunzTarPerm modified mode [ 'LICENSE-MIT', 420, 432 ]
+330 silly gunzTarPerm extractEntry bin/node-sass
+331 silly gunzTarPerm modified mode [ 'bin/node-sass', 493, 504 ]
+332 silly gunzTarPerm extractEntry readme.md
+333 silly gunzTarPerm modified mode [ 'readme.md', 420, 432 ]
+334 silly gunzTarPerm extractEntry tasks/sass.js
+335 silly gunzTarPerm modified mode [ 'tasks/sass.js', 420, 432 ]
+336 silly gunzTarPerm extractEntry README.md
+337 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+338 silly gunzTarPerm extractEntry tasks/concat.js
+339 silly gunzTarPerm modified mode [ 'tasks/concat.js', 420, 432 ]
+340 silly gunzTarPerm extractEntry README.md
+341 silly gunzTarPerm modified mode [ 'README.md', 420, 432 ]
+342 silly gunzTarPerm extractEntry LICENSE-MIT
+343 silly gunzTarPerm modified mode [ 'LICENSE-MIT', 420, 432 ]
+344 silly gunzTarPerm extractEntry tasks/watch.js
+345 silly gunzTarPerm modified mode [ 'tasks/watch.js', 420, 432 ]
+346 silly gunzTarPerm extractEntry tasks/lib/livereload.js
+347 silly gunzTarPerm modified mode [ 'tasks/lib/livereload.js', 420, 432 ]
+348 silly gunzTarPerm extractEntry tasks/lib/taskrun.js
+349 silly gunzTarPerm modified mode [ 'tasks/lib/taskrun.js', 420, 432 ]
+350 silly gunzTarPerm extractEntry tasks/lib/taskrunner.js
+351 silly gunzTarPerm modified mode [ 'tasks/lib/taskrunner.js', 420, 432 ]
+352 error Error: EACCES, chown '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json'
+352 error  { [Error: EACCES, chown '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json']
+352 error   errno: 3,
+352 error   code: 'EACCES',
+352 error   path: '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json',
+352 error   fstream_finish_call: 'chown',
+352 error   fstream_type: 'File',
+352 error   fstream_path: '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json',
+352 error   fstream_class: 'FileWriter',
+352 error   fstream_stack:
+352 error    [ '/usr/lib/nodejs/fstream/lib/writer.js:305:19',
+352 error      '/usr/lib/nodejs/graceful-fs/polyfills.js:143:7',
+352 error      'Object.oncomplete (evalmachine.<anonymous>:107:15)' ] }
+353 error Please try running this command again as root/Administrator.
+354 error System Linux 3.16.0-34-generic
+355 error command "/usr/bin/nodejs" "/usr/bin/npm" "install"
+356 error cwd /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet
+357 error node -v v0.10.25
+358 error npm -v 1.4.21
+359 error path /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json
+360 error fstream_path /home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json
+361 error fstream_type File
+362 error fstream_class FileWriter
+363 error fstream_finish_call chown
+364 error code EACCES
+365 error errno 3
+366 error stack Error: EACCES, chown '/home/steve/Dev55/emmetchxfair.gaslightmedia.com/web/wp-content/themes/FairEmmet/node_modules/grunt-contrib-uglify/package.json'
+367 error fstream_stack /usr/lib/nodejs/fstream/lib/writer.js:305:19
+367 error fstream_stack /usr/lib/nodejs/graceful-fs/polyfills.js:143:7
+367 error fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
+368 verbose exit [ 3, true ]