From 0e58846552a07792247d735acbfbe397edf9c90e Mon Sep 17 00:00:00 2001 From: Alex Zurek Date: Tue, 8 Oct 2019 20:53:15 -0400 Subject: [PATCH] Adds the 'Beer Song' exercise --- config.json | 12 + exercises/beer-song/.meta/version | 1 + exercises/beer-song/README.md | 337 ++++++++++++++++ exercises/beer-song/analysis_options.yaml | 18 + exercises/beer-song/lib/beer_song.dart | 3 + exercises/beer-song/lib/example.dart | 29 ++ exercises/beer-song/pubspec.yaml | 5 + exercises/beer-song/test/beer_song_test.dart | 402 +++++++++++++++++++ 8 files changed, 807 insertions(+) create mode 100644 exercises/beer-song/.meta/version create mode 100644 exercises/beer-song/README.md create mode 100644 exercises/beer-song/analysis_options.yaml create mode 100644 exercises/beer-song/lib/beer_song.dart create mode 100644 exercises/beer-song/lib/example.dart create mode 100644 exercises/beer-song/pubspec.yaml create mode 100644 exercises/beer-song/test/beer_song_test.dart diff --git a/config.json b/config.json index 6a425532..97a27cd4 100644 --- a/config.json +++ b/config.json @@ -87,6 +87,18 @@ "strings" ] }, + { + "slug": "beer-song", + "uuid": "50c34698-7767-42b3-962f-21c735e49787", + "core": false, + "unlocked_by": "scrabble-score", + "difficulty": 3, + "topics": [ + "loops", + "strings", + "text_formatting" + ] + }, { "slug": "armstrong-numbers", "uuid": "4f650701-9568-4d95-9f72-be4bde2c90ec", diff --git a/exercises/beer-song/.meta/version b/exercises/beer-song/.meta/version new file mode 100644 index 00000000..50aea0e7 --- /dev/null +++ b/exercises/beer-song/.meta/version @@ -0,0 +1 @@ +2.1.0 \ No newline at end of file diff --git a/exercises/beer-song/README.md b/exercises/beer-song/README.md new file mode 100644 index 00000000..b80c0195 --- /dev/null +++ b/exercises/beer-song/README.md @@ -0,0 +1,337 @@ +# Beer Song + +Recite the lyrics to that beloved classic, that field-trip favorite: 99 Bottles of Beer on the Wall. + +Note that not all verses are identical. + +```text +99 bottles of beer on the wall, 99 bottles of beer. +Take one down and pass it around, 98 bottles of beer on the wall. + +98 bottles of beer on the wall, 98 bottles of beer. +Take one down and pass it around, 97 bottles of beer on the wall. + +97 bottles of beer on the wall, 97 bottles of beer. +Take one down and pass it around, 96 bottles of beer on the wall. + +96 bottles of beer on the wall, 96 bottles of beer. +Take one down and pass it around, 95 bottles of beer on the wall. + +95 bottles of beer on the wall, 95 bottles of beer. +Take one down and pass it around, 94 bottles of beer on the wall. + +94 bottles of beer on the wall, 94 bottles of beer. +Take one down and pass it around, 93 bottles of beer on the wall. + +93 bottles of beer on the wall, 93 bottles of beer. +Take one down and pass it around, 92 bottles of beer on the wall. + +92 bottles of beer on the wall, 92 bottles of beer. +Take one down and pass it around, 91 bottles of beer on the wall. + +91 bottles of beer on the wall, 91 bottles of beer. +Take one down and pass it around, 90 bottles of beer on the wall. + +90 bottles of beer on the wall, 90 bottles of beer. +Take one down and pass it around, 89 bottles of beer on the wall. + +89 bottles of beer on the wall, 89 bottles of beer. +Take one down and pass it around, 88 bottles of beer on the wall. + +88 bottles of beer on the wall, 88 bottles of beer. +Take one down and pass it around, 87 bottles of beer on the wall. + +87 bottles of beer on the wall, 87 bottles of beer. +Take one down and pass it around, 86 bottles of beer on the wall. + +86 bottles of beer on the wall, 86 bottles of beer. +Take one down and pass it around, 85 bottles of beer on the wall. + +85 bottles of beer on the wall, 85 bottles of beer. +Take one down and pass it around, 84 bottles of beer on the wall. + +84 bottles of beer on the wall, 84 bottles of beer. +Take one down and pass it around, 83 bottles of beer on the wall. + +83 bottles of beer on the wall, 83 bottles of beer. +Take one down and pass it around, 82 bottles of beer on the wall. + +82 bottles of beer on the wall, 82 bottles of beer. +Take one down and pass it around, 81 bottles of beer on the wall. + +81 bottles of beer on the wall, 81 bottles of beer. +Take one down and pass it around, 80 bottles of beer on the wall. + +80 bottles of beer on the wall, 80 bottles of beer. +Take one down and pass it around, 79 bottles of beer on the wall. + +79 bottles of beer on the wall, 79 bottles of beer. +Take one down and pass it around, 78 bottles of beer on the wall. + +78 bottles of beer on the wall, 78 bottles of beer. +Take one down and pass it around, 77 bottles of beer on the wall. + +77 bottles of beer on the wall, 77 bottles of beer. +Take one down and pass it around, 76 bottles of beer on the wall. + +76 bottles of beer on the wall, 76 bottles of beer. +Take one down and pass it around, 75 bottles of beer on the wall. + +75 bottles of beer on the wall, 75 bottles of beer. +Take one down and pass it around, 74 bottles of beer on the wall. + +74 bottles of beer on the wall, 74 bottles of beer. +Take one down and pass it around, 73 bottles of beer on the wall. + +73 bottles of beer on the wall, 73 bottles of beer. +Take one down and pass it around, 72 bottles of beer on the wall. + +72 bottles of beer on the wall, 72 bottles of beer. +Take one down and pass it around, 71 bottles of beer on the wall. + +71 bottles of beer on the wall, 71 bottles of beer. +Take one down and pass it around, 70 bottles of beer on the wall. + +70 bottles of beer on the wall, 70 bottles of beer. +Take one down and pass it around, 69 bottles of beer on the wall. + +69 bottles of beer on the wall, 69 bottles of beer. +Take one down and pass it around, 68 bottles of beer on the wall. + +68 bottles of beer on the wall, 68 bottles of beer. +Take one down and pass it around, 67 bottles of beer on the wall. + +67 bottles of beer on the wall, 67 bottles of beer. +Take one down and pass it around, 66 bottles of beer on the wall. + +66 bottles of beer on the wall, 66 bottles of beer. +Take one down and pass it around, 65 bottles of beer on the wall. + +65 bottles of beer on the wall, 65 bottles of beer. +Take one down and pass it around, 64 bottles of beer on the wall. + +64 bottles of beer on the wall, 64 bottles of beer. +Take one down and pass it around, 63 bottles of beer on the wall. + +63 bottles of beer on the wall, 63 bottles of beer. +Take one down and pass it around, 62 bottles of beer on the wall. + +62 bottles of beer on the wall, 62 bottles of beer. +Take one down and pass it around, 61 bottles of beer on the wall. + +61 bottles of beer on the wall, 61 bottles of beer. +Take one down and pass it around, 60 bottles of beer on the wall. + +60 bottles of beer on the wall, 60 bottles of beer. +Take one down and pass it around, 59 bottles of beer on the wall. + +59 bottles of beer on the wall, 59 bottles of beer. +Take one down and pass it around, 58 bottles of beer on the wall. + +58 bottles of beer on the wall, 58 bottles of beer. +Take one down and pass it around, 57 bottles of beer on the wall. + +57 bottles of beer on the wall, 57 bottles of beer. +Take one down and pass it around, 56 bottles of beer on the wall. + +56 bottles of beer on the wall, 56 bottles of beer. +Take one down and pass it around, 55 bottles of beer on the wall. + +55 bottles of beer on the wall, 55 bottles of beer. +Take one down and pass it around, 54 bottles of beer on the wall. + +54 bottles of beer on the wall, 54 bottles of beer. +Take one down and pass it around, 53 bottles of beer on the wall. + +53 bottles of beer on the wall, 53 bottles of beer. +Take one down and pass it around, 52 bottles of beer on the wall. + +52 bottles of beer on the wall, 52 bottles of beer. +Take one down and pass it around, 51 bottles of beer on the wall. + +51 bottles of beer on the wall, 51 bottles of beer. +Take one down and pass it around, 50 bottles of beer on the wall. + +50 bottles of beer on the wall, 50 bottles of beer. +Take one down and pass it around, 49 bottles of beer on the wall. + +49 bottles of beer on the wall, 49 bottles of beer. +Take one down and pass it around, 48 bottles of beer on the wall. + +48 bottles of beer on the wall, 48 bottles of beer. +Take one down and pass it around, 47 bottles of beer on the wall. + +47 bottles of beer on the wall, 47 bottles of beer. +Take one down and pass it around, 46 bottles of beer on the wall. + +46 bottles of beer on the wall, 46 bottles of beer. +Take one down and pass it around, 45 bottles of beer on the wall. + +45 bottles of beer on the wall, 45 bottles of beer. +Take one down and pass it around, 44 bottles of beer on the wall. + +44 bottles of beer on the wall, 44 bottles of beer. +Take one down and pass it around, 43 bottles of beer on the wall. + +43 bottles of beer on the wall, 43 bottles of beer. +Take one down and pass it around, 42 bottles of beer on the wall. + +42 bottles of beer on the wall, 42 bottles of beer. +Take one down and pass it around, 41 bottles of beer on the wall. + +41 bottles of beer on the wall, 41 bottles of beer. +Take one down and pass it around, 40 bottles of beer on the wall. + +40 bottles of beer on the wall, 40 bottles of beer. +Take one down and pass it around, 39 bottles of beer on the wall. + +39 bottles of beer on the wall, 39 bottles of beer. +Take one down and pass it around, 38 bottles of beer on the wall. + +38 bottles of beer on the wall, 38 bottles of beer. +Take one down and pass it around, 37 bottles of beer on the wall. + +37 bottles of beer on the wall, 37 bottles of beer. +Take one down and pass it around, 36 bottles of beer on the wall. + +36 bottles of beer on the wall, 36 bottles of beer. +Take one down and pass it around, 35 bottles of beer on the wall. + +35 bottles of beer on the wall, 35 bottles of beer. +Take one down and pass it around, 34 bottles of beer on the wall. + +34 bottles of beer on the wall, 34 bottles of beer. +Take one down and pass it around, 33 bottles of beer on the wall. + +33 bottles of beer on the wall, 33 bottles of beer. +Take one down and pass it around, 32 bottles of beer on the wall. + +32 bottles of beer on the wall, 32 bottles of beer. +Take one down and pass it around, 31 bottles of beer on the wall. + +31 bottles of beer on the wall, 31 bottles of beer. +Take one down and pass it around, 30 bottles of beer on the wall. + +30 bottles of beer on the wall, 30 bottles of beer. +Take one down and pass it around, 29 bottles of beer on the wall. + +29 bottles of beer on the wall, 29 bottles of beer. +Take one down and pass it around, 28 bottles of beer on the wall. + +28 bottles of beer on the wall, 28 bottles of beer. +Take one down and pass it around, 27 bottles of beer on the wall. + +27 bottles of beer on the wall, 27 bottles of beer. +Take one down and pass it around, 26 bottles of beer on the wall. + +26 bottles of beer on the wall, 26 bottles of beer. +Take one down and pass it around, 25 bottles of beer on the wall. + +25 bottles of beer on the wall, 25 bottles of beer. +Take one down and pass it around, 24 bottles of beer on the wall. + +24 bottles of beer on the wall, 24 bottles of beer. +Take one down and pass it around, 23 bottles of beer on the wall. + +23 bottles of beer on the wall, 23 bottles of beer. +Take one down and pass it around, 22 bottles of beer on the wall. + +22 bottles of beer on the wall, 22 bottles of beer. +Take one down and pass it around, 21 bottles of beer on the wall. + +21 bottles of beer on the wall, 21 bottles of beer. +Take one down and pass it around, 20 bottles of beer on the wall. + +20 bottles of beer on the wall, 20 bottles of beer. +Take one down and pass it around, 19 bottles of beer on the wall. + +19 bottles of beer on the wall, 19 bottles of beer. +Take one down and pass it around, 18 bottles of beer on the wall. + +18 bottles of beer on the wall, 18 bottles of beer. +Take one down and pass it around, 17 bottles of beer on the wall. + +17 bottles of beer on the wall, 17 bottles of beer. +Take one down and pass it around, 16 bottles of beer on the wall. + +16 bottles of beer on the wall, 16 bottles of beer. +Take one down and pass it around, 15 bottles of beer on the wall. + +15 bottles of beer on the wall, 15 bottles of beer. +Take one down and pass it around, 14 bottles of beer on the wall. + +14 bottles of beer on the wall, 14 bottles of beer. +Take one down and pass it around, 13 bottles of beer on the wall. + +13 bottles of beer on the wall, 13 bottles of beer. +Take one down and pass it around, 12 bottles of beer on the wall. + +12 bottles of beer on the wall, 12 bottles of beer. +Take one down and pass it around, 11 bottles of beer on the wall. + +11 bottles of beer on the wall, 11 bottles of beer. +Take one down and pass it around, 10 bottles of beer on the wall. + +10 bottles of beer on the wall, 10 bottles of beer. +Take one down and pass it around, 9 bottles of beer on the wall. + +9 bottles of beer on the wall, 9 bottles of beer. +Take one down and pass it around, 8 bottles of beer on the wall. + +8 bottles of beer on the wall, 8 bottles of beer. +Take one down and pass it around, 7 bottles of beer on the wall. + +7 bottles of beer on the wall, 7 bottles of beer. +Take one down and pass it around, 6 bottles of beer on the wall. + +6 bottles of beer on the wall, 6 bottles of beer. +Take one down and pass it around, 5 bottles of beer on the wall. + +5 bottles of beer on the wall, 5 bottles of beer. +Take one down and pass it around, 4 bottles of beer on the wall. + +4 bottles of beer on the wall, 4 bottles of beer. +Take one down and pass it around, 3 bottles of beer on the wall. + +3 bottles of beer on the wall, 3 bottles of beer. +Take one down and pass it around, 2 bottles of beer on the wall. + +2 bottles of beer on the wall, 2 bottles of beer. +Take one down and pass it around, 1 bottle of beer on the wall. + +1 bottle of beer on the wall, 1 bottle of beer. +Take it down and pass it around, no more bottles of beer on the wall. + +No more bottles of beer on the wall, no more bottles of beer. +Go to the store and buy some more, 99 bottles of beer on the wall. +``` + +## For bonus points + +Did you get the tests passing and the code clean? If you want to, these +are some additional things you could try: + +* Remove as much duplication as you possibly can. +* Optimize for readability, even if it means introducing duplication. +* If you've removed all the duplication, do you have a lot of + conditionals? Try replacing the conditionals with polymorphism, if it + applies in this language. How readable is it? + +Then please share your thoughts in a comment on the submission. Did this +experiment make the code better? Worse? Did you learn anything from it? + + +To run the tests: + +```sh +$ pub run test +``` + +For more detailed info about the Dart track see the [installation](http://exercism.io/languages/dart/installation) and [testing](http://exercism.io/languages/dart/tests) pages. + +## Source + +Learn to Program by Chris Pine [http://pine.fm/LearnToProgram/?Chapter=06](http://pine.fm/LearnToProgram/?Chapter=06) + +## Submitting Incomplete Solutions +It's possible to submit an incomplete solution so you can see how others have completed the exercise. diff --git a/exercises/beer-song/analysis_options.yaml b/exercises/beer-song/analysis_options.yaml new file mode 100644 index 00000000..c06363d6 --- /dev/null +++ b/exercises/beer-song/analysis_options.yaml @@ -0,0 +1,18 @@ +analyzer: + strong-mode: + implicit-casts: false + implicit-dynamic: false + errors: + unused_element: error + unused_import: error + unused_local_variable: error + dead_code: error + +linter: + rules: + # Error Rules + - avoid_relative_lib_imports + - avoid_types_as_parameter_names + - literal_only_boolean_expressions + - no_adjacent_strings_in_list + - valid_regexps diff --git a/exercises/beer-song/lib/beer_song.dart b/exercises/beer-song/lib/beer_song.dart new file mode 100644 index 00000000..5898d764 --- /dev/null +++ b/exercises/beer-song/lib/beer_song.dart @@ -0,0 +1,3 @@ +class BeerSong { + // Put your code here +} diff --git a/exercises/beer-song/lib/example.dart b/exercises/beer-song/lib/example.dart new file mode 100644 index 00000000..186d8f05 --- /dev/null +++ b/exercises/beer-song/lib/example.dart @@ -0,0 +1,29 @@ +class BeerSong { + List recite(int start, int numVerses) { + final verses = []; + + for (var i = 0; i < numVerses; i++) { + int num = start - i; + + if (num > 2) { + verses.add('$num bottles of beer on the wall, $num bottles of beer.'); + verses.add('Take one down and pass it around, ${num - 1} bottles of beer on the wall.'); + } else if (num == 2) { + verses.add('2 bottles of beer on the wall, 2 bottles of beer.'); + verses.add('Take one down and pass it around, 1 bottle of beer on the wall.'); + } else if (num == 1) { + verses.add('1 bottle of beer on the wall, 1 bottle of beer.'); + verses.add('Take it down and pass it around, no more bottles of beer on the wall.'); + } else if (num == 0) { + verses.add('No more bottles of beer on the wall, no more bottles of beer.'); + verses.add('Go to the store and buy some more, 99 bottles of beer on the wall.'); + } + + if (numVerses > 1 && i != numVerses - 1) { + verses.add(''); + } + } + + return verses; + } +} diff --git a/exercises/beer-song/pubspec.yaml b/exercises/beer-song/pubspec.yaml new file mode 100644 index 00000000..2d0c6c75 --- /dev/null +++ b/exercises/beer-song/pubspec.yaml @@ -0,0 +1,5 @@ +name: 'beer_song' +environment: + sdk: '>=1.24.0 <3.0.0' +dev_dependencies: + test: '<2.0.0' diff --git a/exercises/beer-song/test/beer_song_test.dart b/exercises/beer-song/test/beer_song_test.dart new file mode 100644 index 00000000..37e0f64c --- /dev/null +++ b/exercises/beer-song/test/beer_song_test.dart @@ -0,0 +1,402 @@ +import 'package:beer_song/beer_song.dart'; +import 'package:test/test.dart'; + +void main() { + final beerSong = new BeerSong(); + + group('BeerSong', () { + group('verse', () { + group('single verse', () { + test('first generic verse', () { + final result = beerSong.recite(99, 1); + expect( + result, + equals([ + '99 bottles of beer on the wall, 99 bottles of beer.', + 'Take one down and pass it around, 98 bottles of beer on the wall.' + ])); + }, skip: false); + + test('last generic verse', () { + final result = beerSong.recite(3, 1); + expect( + result, + equals([ + '3 bottles of beer on the wall, 3 bottles of beer.', + 'Take one down and pass it around, 2 bottles of beer on the wall.' + ])); + }, skip: true); + + test('verse with 2 bottles', () { + final result = beerSong.recite(2, 1); + expect( + result, + equals([ + '2 bottles of beer on the wall, 2 bottles of beer.', + 'Take one down and pass it around, 1 bottle of beer on the wall.' + ])); + }, skip: true); + + test('verse with 1 bottle', () { + final result = beerSong.recite(1, 1); + expect( + result, + equals([ + '1 bottle of beer on the wall, 1 bottle of beer.', + 'Take it down and pass it around, no more bottles of beer on the wall.' + ])); + }, skip: true); + + test('verse with 0 bottles', () { + final result = beerSong.recite(0, 1); + expect( + result, + equals([ + 'No more bottles of beer on the wall, no more bottles of beer.', + 'Go to the store and buy some more, 99 bottles of beer on the wall.' + ])); + }, skip: true); + }); + }); + + group('lyrics', () { + group('multiple verses', () { + test('first two verses', () { + final result = beerSong.recite(99, 2); + expect( + result, + equals([ + '99 bottles of beer on the wall, 99 bottles of beer.', + 'Take one down and pass it around, 98 bottles of beer on the wall.', + '', + '98 bottles of beer on the wall, 98 bottles of beer.', + 'Take one down and pass it around, 97 bottles of beer on the wall.' + ])); + }, skip: true); + + test('last three verses', () { + final result = beerSong.recite(2, 3); + expect( + result, + equals([ + '2 bottles of beer on the wall, 2 bottles of beer.', + 'Take one down and pass it around, 1 bottle of beer on the wall.', + '', + '1 bottle of beer on the wall, 1 bottle of beer.', + 'Take it down and pass it around, no more bottles of beer on the wall.', + '', + 'No more bottles of beer on the wall, no more bottles of beer.', + 'Go to the store and buy some more, 99 bottles of beer on the wall.' + ])); + }, skip: true); + + test('all verses', () { + final result = beerSong.recite(99, 100); + expect( + result, + equals([ + '99 bottles of beer on the wall, 99 bottles of beer.', + 'Take one down and pass it around, 98 bottles of beer on the wall.', + '', + '98 bottles of beer on the wall, 98 bottles of beer.', + 'Take one down and pass it around, 97 bottles of beer on the wall.', + '', + '97 bottles of beer on the wall, 97 bottles of beer.', + 'Take one down and pass it around, 96 bottles of beer on the wall.', + '', + '96 bottles of beer on the wall, 96 bottles of beer.', + 'Take one down and pass it around, 95 bottles of beer on the wall.', + '', + '95 bottles of beer on the wall, 95 bottles of beer.', + 'Take one down and pass it around, 94 bottles of beer on the wall.', + '', + '94 bottles of beer on the wall, 94 bottles of beer.', + 'Take one down and pass it around, 93 bottles of beer on the wall.', + '', + '93 bottles of beer on the wall, 93 bottles of beer.', + 'Take one down and pass it around, 92 bottles of beer on the wall.', + '', + '92 bottles of beer on the wall, 92 bottles of beer.', + 'Take one down and pass it around, 91 bottles of beer on the wall.', + '', + '91 bottles of beer on the wall, 91 bottles of beer.', + 'Take one down and pass it around, 90 bottles of beer on the wall.', + '', + '90 bottles of beer on the wall, 90 bottles of beer.', + 'Take one down and pass it around, 89 bottles of beer on the wall.', + '', + '89 bottles of beer on the wall, 89 bottles of beer.', + 'Take one down and pass it around, 88 bottles of beer on the wall.', + '', + '88 bottles of beer on the wall, 88 bottles of beer.', + 'Take one down and pass it around, 87 bottles of beer on the wall.', + '', + '87 bottles of beer on the wall, 87 bottles of beer.', + 'Take one down and pass it around, 86 bottles of beer on the wall.', + '', + '86 bottles of beer on the wall, 86 bottles of beer.', + 'Take one down and pass it around, 85 bottles of beer on the wall.', + '', + '85 bottles of beer on the wall, 85 bottles of beer.', + 'Take one down and pass it around, 84 bottles of beer on the wall.', + '', + '84 bottles of beer on the wall, 84 bottles of beer.', + 'Take one down and pass it around, 83 bottles of beer on the wall.', + '', + '83 bottles of beer on the wall, 83 bottles of beer.', + 'Take one down and pass it around, 82 bottles of beer on the wall.', + '', + '82 bottles of beer on the wall, 82 bottles of beer.', + 'Take one down and pass it around, 81 bottles of beer on the wall.', + '', + '81 bottles of beer on the wall, 81 bottles of beer.', + 'Take one down and pass it around, 80 bottles of beer on the wall.', + '', + '80 bottles of beer on the wall, 80 bottles of beer.', + 'Take one down and pass it around, 79 bottles of beer on the wall.', + '', + '79 bottles of beer on the wall, 79 bottles of beer.', + 'Take one down and pass it around, 78 bottles of beer on the wall.', + '', + '78 bottles of beer on the wall, 78 bottles of beer.', + 'Take one down and pass it around, 77 bottles of beer on the wall.', + '', + '77 bottles of beer on the wall, 77 bottles of beer.', + 'Take one down and pass it around, 76 bottles of beer on the wall.', + '', + '76 bottles of beer on the wall, 76 bottles of beer.', + 'Take one down and pass it around, 75 bottles of beer on the wall.', + '', + '75 bottles of beer on the wall, 75 bottles of beer.', + 'Take one down and pass it around, 74 bottles of beer on the wall.', + '', + '74 bottles of beer on the wall, 74 bottles of beer.', + 'Take one down and pass it around, 73 bottles of beer on the wall.', + '', + '73 bottles of beer on the wall, 73 bottles of beer.', + 'Take one down and pass it around, 72 bottles of beer on the wall.', + '', + '72 bottles of beer on the wall, 72 bottles of beer.', + 'Take one down and pass it around, 71 bottles of beer on the wall.', + '', + '71 bottles of beer on the wall, 71 bottles of beer.', + 'Take one down and pass it around, 70 bottles of beer on the wall.', + '', + '70 bottles of beer on the wall, 70 bottles of beer.', + 'Take one down and pass it around, 69 bottles of beer on the wall.', + '', + '69 bottles of beer on the wall, 69 bottles of beer.', + 'Take one down and pass it around, 68 bottles of beer on the wall.', + '', + '68 bottles of beer on the wall, 68 bottles of beer.', + 'Take one down and pass it around, 67 bottles of beer on the wall.', + '', + '67 bottles of beer on the wall, 67 bottles of beer.', + 'Take one down and pass it around, 66 bottles of beer on the wall.', + '', + '66 bottles of beer on the wall, 66 bottles of beer.', + 'Take one down and pass it around, 65 bottles of beer on the wall.', + '', + '65 bottles of beer on the wall, 65 bottles of beer.', + 'Take one down and pass it around, 64 bottles of beer on the wall.', + '', + '64 bottles of beer on the wall, 64 bottles of beer.', + 'Take one down and pass it around, 63 bottles of beer on the wall.', + '', + '63 bottles of beer on the wall, 63 bottles of beer.', + 'Take one down and pass it around, 62 bottles of beer on the wall.', + '', + '62 bottles of beer on the wall, 62 bottles of beer.', + 'Take one down and pass it around, 61 bottles of beer on the wall.', + '', + '61 bottles of beer on the wall, 61 bottles of beer.', + 'Take one down and pass it around, 60 bottles of beer on the wall.', + '', + '60 bottles of beer on the wall, 60 bottles of beer.', + 'Take one down and pass it around, 59 bottles of beer on the wall.', + '', + '59 bottles of beer on the wall, 59 bottles of beer.', + 'Take one down and pass it around, 58 bottles of beer on the wall.', + '', + '58 bottles of beer on the wall, 58 bottles of beer.', + 'Take one down and pass it around, 57 bottles of beer on the wall.', + '', + '57 bottles of beer on the wall, 57 bottles of beer.', + 'Take one down and pass it around, 56 bottles of beer on the wall.', + '', + '56 bottles of beer on the wall, 56 bottles of beer.', + 'Take one down and pass it around, 55 bottles of beer on the wall.', + '', + '55 bottles of beer on the wall, 55 bottles of beer.', + 'Take one down and pass it around, 54 bottles of beer on the wall.', + '', + '54 bottles of beer on the wall, 54 bottles of beer.', + 'Take one down and pass it around, 53 bottles of beer on the wall.', + '', + '53 bottles of beer on the wall, 53 bottles of beer.', + 'Take one down and pass it around, 52 bottles of beer on the wall.', + '', + '52 bottles of beer on the wall, 52 bottles of beer.', + 'Take one down and pass it around, 51 bottles of beer on the wall.', + '', + '51 bottles of beer on the wall, 51 bottles of beer.', + 'Take one down and pass it around, 50 bottles of beer on the wall.', + '', + '50 bottles of beer on the wall, 50 bottles of beer.', + 'Take one down and pass it around, 49 bottles of beer on the wall.', + '', + '49 bottles of beer on the wall, 49 bottles of beer.', + 'Take one down and pass it around, 48 bottles of beer on the wall.', + '', + '48 bottles of beer on the wall, 48 bottles of beer.', + 'Take one down and pass it around, 47 bottles of beer on the wall.', + '', + '47 bottles of beer on the wall, 47 bottles of beer.', + 'Take one down and pass it around, 46 bottles of beer on the wall.', + '', + '46 bottles of beer on the wall, 46 bottles of beer.', + 'Take one down and pass it around, 45 bottles of beer on the wall.', + '', + '45 bottles of beer on the wall, 45 bottles of beer.', + 'Take one down and pass it around, 44 bottles of beer on the wall.', + '', + '44 bottles of beer on the wall, 44 bottles of beer.', + 'Take one down and pass it around, 43 bottles of beer on the wall.', + '', + '43 bottles of beer on the wall, 43 bottles of beer.', + 'Take one down and pass it around, 42 bottles of beer on the wall.', + '', + '42 bottles of beer on the wall, 42 bottles of beer.', + 'Take one down and pass it around, 41 bottles of beer on the wall.', + '', + '41 bottles of beer on the wall, 41 bottles of beer.', + 'Take one down and pass it around, 40 bottles of beer on the wall.', + '', + '40 bottles of beer on the wall, 40 bottles of beer.', + 'Take one down and pass it around, 39 bottles of beer on the wall.', + '', + '39 bottles of beer on the wall, 39 bottles of beer.', + 'Take one down and pass it around, 38 bottles of beer on the wall.', + '', + '38 bottles of beer on the wall, 38 bottles of beer.', + 'Take one down and pass it around, 37 bottles of beer on the wall.', + '', + '37 bottles of beer on the wall, 37 bottles of beer.', + 'Take one down and pass it around, 36 bottles of beer on the wall.', + '', + '36 bottles of beer on the wall, 36 bottles of beer.', + 'Take one down and pass it around, 35 bottles of beer on the wall.', + '', + '35 bottles of beer on the wall, 35 bottles of beer.', + 'Take one down and pass it around, 34 bottles of beer on the wall.', + '', + '34 bottles of beer on the wall, 34 bottles of beer.', + 'Take one down and pass it around, 33 bottles of beer on the wall.', + '', + '33 bottles of beer on the wall, 33 bottles of beer.', + 'Take one down and pass it around, 32 bottles of beer on the wall.', + '', + '32 bottles of beer on the wall, 32 bottles of beer.', + 'Take one down and pass it around, 31 bottles of beer on the wall.', + '', + '31 bottles of beer on the wall, 31 bottles of beer.', + 'Take one down and pass it around, 30 bottles of beer on the wall.', + '', + '30 bottles of beer on the wall, 30 bottles of beer.', + 'Take one down and pass it around, 29 bottles of beer on the wall.', + '', + '29 bottles of beer on the wall, 29 bottles of beer.', + 'Take one down and pass it around, 28 bottles of beer on the wall.', + '', + '28 bottles of beer on the wall, 28 bottles of beer.', + 'Take one down and pass it around, 27 bottles of beer on the wall.', + '', + '27 bottles of beer on the wall, 27 bottles of beer.', + 'Take one down and pass it around, 26 bottles of beer on the wall.', + '', + '26 bottles of beer on the wall, 26 bottles of beer.', + 'Take one down and pass it around, 25 bottles of beer on the wall.', + '', + '25 bottles of beer on the wall, 25 bottles of beer.', + 'Take one down and pass it around, 24 bottles of beer on the wall.', + '', + '24 bottles of beer on the wall, 24 bottles of beer.', + 'Take one down and pass it around, 23 bottles of beer on the wall.', + '', + '23 bottles of beer on the wall, 23 bottles of beer.', + 'Take one down and pass it around, 22 bottles of beer on the wall.', + '', + '22 bottles of beer on the wall, 22 bottles of beer.', + 'Take one down and pass it around, 21 bottles of beer on the wall.', + '', + '21 bottles of beer on the wall, 21 bottles of beer.', + 'Take one down and pass it around, 20 bottles of beer on the wall.', + '', + '20 bottles of beer on the wall, 20 bottles of beer.', + 'Take one down and pass it around, 19 bottles of beer on the wall.', + '', + '19 bottles of beer on the wall, 19 bottles of beer.', + 'Take one down and pass it around, 18 bottles of beer on the wall.', + '', + '18 bottles of beer on the wall, 18 bottles of beer.', + 'Take one down and pass it around, 17 bottles of beer on the wall.', + '', + '17 bottles of beer on the wall, 17 bottles of beer.', + 'Take one down and pass it around, 16 bottles of beer on the wall.', + '', + '16 bottles of beer on the wall, 16 bottles of beer.', + 'Take one down and pass it around, 15 bottles of beer on the wall.', + '', + '15 bottles of beer on the wall, 15 bottles of beer.', + 'Take one down and pass it around, 14 bottles of beer on the wall.', + '', + '14 bottles of beer on the wall, 14 bottles of beer.', + 'Take one down and pass it around, 13 bottles of beer on the wall.', + '', + '13 bottles of beer on the wall, 13 bottles of beer.', + 'Take one down and pass it around, 12 bottles of beer on the wall.', + '', + '12 bottles of beer on the wall, 12 bottles of beer.', + 'Take one down and pass it around, 11 bottles of beer on the wall.', + '', + '11 bottles of beer on the wall, 11 bottles of beer.', + 'Take one down and pass it around, 10 bottles of beer on the wall.', + '', + '10 bottles of beer on the wall, 10 bottles of beer.', + 'Take one down and pass it around, 9 bottles of beer on the wall.', + '', + '9 bottles of beer on the wall, 9 bottles of beer.', + 'Take one down and pass it around, 8 bottles of beer on the wall.', + '', + '8 bottles of beer on the wall, 8 bottles of beer.', + 'Take one down and pass it around, 7 bottles of beer on the wall.', + '', + '7 bottles of beer on the wall, 7 bottles of beer.', + 'Take one down and pass it around, 6 bottles of beer on the wall.', + '', + '6 bottles of beer on the wall, 6 bottles of beer.', + 'Take one down and pass it around, 5 bottles of beer on the wall.', + '', + '5 bottles of beer on the wall, 5 bottles of beer.', + 'Take one down and pass it around, 4 bottles of beer on the wall.', + '', + '4 bottles of beer on the wall, 4 bottles of beer.', + 'Take one down and pass it around, 3 bottles of beer on the wall.', + '', + '3 bottles of beer on the wall, 3 bottles of beer.', + 'Take one down and pass it around, 2 bottles of beer on the wall.', + '', + '2 bottles of beer on the wall, 2 bottles of beer.', + 'Take one down and pass it around, 1 bottle of beer on the wall.', + '', + '1 bottle of beer on the wall, 1 bottle of beer.', + 'Take it down and pass it around, no more bottles of beer on the wall.', + '', + 'No more bottles of beer on the wall, no more bottles of beer.', + 'Go to the store and buy some more, 99 bottles of beer on the wall.' + ])); + }, skip: true); + }); + }); + }); +}