1 00:00:00,480 --> 00:00:03,480 foreign 2 00:00:10,940 --> 00:00:18,300 hi everyone thank you for being here 3 00:00:14,219 --> 00:00:20,760 this is the last talk before we start uh 4 00:00:18,300 --> 00:00:25,380 well before we all enter Chris and 5 00:00:20,760 --> 00:00:27,960 oigabauer's sardom of lightning talks 6 00:00:25,380 --> 00:00:29,760 there there is afternoon tea first so 7 00:00:27,960 --> 00:00:30,539 stock up 8 00:00:29,760 --> 00:00:35,219 um 9 00:00:30,539 --> 00:00:37,020 in the meantime Amanda Hogan is not only 10 00:00:35,219 --> 00:00:39,420 a teacher she's also a teacher teacher 11 00:00:37,020 --> 00:00:41,040 so she teaches teachers how to teach her 12 00:00:39,420 --> 00:00:43,020 in Computing 13 00:00:41,040 --> 00:00:44,399 yes that's what yes Esther that is what 14 00:00:43,020 --> 00:00:45,899 yep good great 15 00:00:44,399 --> 00:00:48,000 um if you've been on the Discord she's 16 00:00:45,899 --> 00:00:49,500 also the person that's putting up all of 17 00:00:48,000 --> 00:00:52,739 those really cool visual diagrams of 18 00:00:49,500 --> 00:00:54,600 talks they're awesome go and find them 19 00:00:52,739 --> 00:00:56,879 yes 20 00:00:54,600 --> 00:00:59,579 yes I'm just gonna let it do the thing 21 00:00:56,879 --> 00:01:00,899 yeah thanks very much Maya okay hello 22 00:00:59,579 --> 00:01:02,399 everybody 23 00:01:00,899 --> 00:01:04,019 um I know that you thought this would be 24 00:01:02,399 --> 00:01:05,640 the quiet talk when nobody picks on you 25 00:01:04,019 --> 00:01:07,320 and you can just hide at the back of the 26 00:01:05,640 --> 00:01:08,520 theater but that's not what this clock 27 00:01:07,320 --> 00:01:10,380 is going to be because I'm really 28 00:01:08,520 --> 00:01:12,240 nervous and I need to use audience 29 00:01:10,380 --> 00:01:13,619 participation so there's going to be 30 00:01:12,240 --> 00:01:17,520 some audience participation in here 31 00:01:13,619 --> 00:01:19,979 somewhere are we singing cilia am I the 32 00:01:17,520 --> 00:01:22,500 right person to find out we have no idea 33 00:01:19,979 --> 00:01:23,820 let's find out okay so why am I doing 34 00:01:22,500 --> 00:01:24,840 this talk 35 00:01:23,820 --> 00:01:28,140 thank you 36 00:01:24,840 --> 00:01:30,479 I am the luckiest woman in the world uh 37 00:01:28,140 --> 00:01:33,000 every morning I am woken up with a 38 00:01:30,479 --> 00:01:35,820 coffee delivered to the side of my bed 39 00:01:33,000 --> 00:01:38,700 I'm not kidding this is a photo of my 40 00:01:35,820 --> 00:01:40,500 side of my bed and I I love my husband 41 00:01:38,700 --> 00:01:42,659 and he's never allowed to go anywhere 42 00:01:40,500 --> 00:01:45,720 because I need this 43 00:01:42,659 --> 00:01:48,020 um so every morning we sit down and we 44 00:01:45,720 --> 00:01:50,939 drink our coffee and we play hurdle 45 00:01:48,020 --> 00:01:52,740 hurdle is a game that came about when 46 00:01:50,939 --> 00:01:54,659 when Josh Wardle did the whole world 47 00:01:52,740 --> 00:01:57,899 thing and there were a million clones 48 00:01:54,659 --> 00:02:01,020 made and hurdle was a thing where you've 49 00:01:57,899 --> 00:02:04,200 got 17 seconds of audio to identify a 50 00:02:01,020 --> 00:02:06,000 song and then once herder was was made 51 00:02:04,200 --> 00:02:08,759 then there were some spin-offs that were 52 00:02:06,000 --> 00:02:11,160 also made and they were decade based 53 00:02:08,759 --> 00:02:13,860 hurdle was bought by Spotify and then 54 00:02:11,160 --> 00:02:16,860 immediately killed and so we stick with 55 00:02:13,860 --> 00:02:18,720 hurdle 80s 90s and 2000s 56 00:02:16,860 --> 00:02:20,340 and I thought 57 00:02:18,720 --> 00:02:22,680 um there's an interesting thing it's an 58 00:02:20,340 --> 00:02:25,860 like uh it's interesting that my husband 59 00:02:22,680 --> 00:02:28,200 and I uh we identify songs differently I 60 00:02:25,860 --> 00:02:32,220 work with lyrics he works with music and 61 00:02:28,200 --> 00:02:33,420 bands and so it's in my mind okay 62 00:02:32,220 --> 00:02:36,239 foreign 63 00:02:33,420 --> 00:02:38,280 we also are a family of Music listeners 64 00:02:36,239 --> 00:02:40,500 we listen to music while we make dinner 65 00:02:38,280 --> 00:02:42,360 we all have headphones we listen to 66 00:02:40,500 --> 00:02:44,519 music and our commutes 67 00:02:42,360 --> 00:02:47,580 um we all have overlapping interest but 68 00:02:44,519 --> 00:02:50,099 also diverse interests my parents were 69 00:02:47,580 --> 00:02:53,879 from the age that you know the big pop 70 00:02:50,099 --> 00:02:56,400 decades the 60s and 70s I was Peak 71 00:02:53,879 --> 00:02:58,400 listening in the 80s and 90s and my 72 00:02:56,400 --> 00:03:01,560 children are Peak listening in the 73 00:02:58,400 --> 00:03:03,980 post-2000s world so there's a friendly 74 00:03:01,560 --> 00:03:06,840 competitiveness between the generations 75 00:03:03,980 --> 00:03:08,459 which generation is the best generation 76 00:03:06,840 --> 00:03:10,739 of music 77 00:03:08,459 --> 00:03:13,019 interesting question I have rattling 78 00:03:10,739 --> 00:03:16,200 around in my head 79 00:03:13,019 --> 00:03:18,300 I used to do data stuff for a living a 80 00:03:16,200 --> 00:03:20,640 long time ago I don't want to 81 00:03:18,300 --> 00:03:23,280 misrepresent myself here I was not a 82 00:03:20,640 --> 00:03:26,459 data Legend but I was a dashboard 83 00:03:23,280 --> 00:03:30,659 builder at Microsoft a long time ago it 84 00:03:26,459 --> 00:03:31,560 was a ton of a time ago now but and I 85 00:03:30,659 --> 00:03:33,900 thought 86 00:03:31,560 --> 00:03:35,400 that I could do with updating my data 87 00:03:33,900 --> 00:03:39,319 skills 88 00:03:35,400 --> 00:03:43,379 I have heard about libraries like pandas 89 00:03:39,319 --> 00:03:45,000 and I wanted to have a play but when do 90 00:03:43,379 --> 00:03:47,640 you find time to play you never find 91 00:03:45,000 --> 00:03:49,500 time to play so I 92 00:03:47,640 --> 00:03:53,340 like the two things started to mesh 93 00:03:49,500 --> 00:03:55,440 together could I use this as an example 94 00:03:53,340 --> 00:03:57,180 of how to learn something new while 95 00:03:55,440 --> 00:03:58,980 trying to find out something interesting 96 00:03:57,180 --> 00:04:02,280 you know something that I'm interested 97 00:03:58,980 --> 00:04:04,739 in can I finally tell my children that 98 00:04:02,280 --> 00:04:08,640 their generation of pop music is worse 99 00:04:04,739 --> 00:04:12,060 than my generation of pop music okay 100 00:04:08,640 --> 00:04:14,400 so confident confident that you can't 101 00:04:12,060 --> 00:04:17,880 get deeper than the lyrics of Nirvana 102 00:04:14,400 --> 00:04:21,959 and Mariah Carey I set out so I had to 103 00:04:17,880 --> 00:04:23,699 have a whole lot of procedure involved I 104 00:04:21,959 --> 00:04:25,080 had to make some decisions and there are 105 00:04:23,699 --> 00:04:26,880 some decisions that some of you will 106 00:04:25,080 --> 00:04:29,460 disagree with but I went with those 107 00:04:26,880 --> 00:04:31,919 decisions anyway and you're welcome to 108 00:04:29,460 --> 00:04:34,020 go ahead and do your own procedure but 109 00:04:31,919 --> 00:04:35,940 we'll we'll work through my procedure at 110 00:04:34,020 --> 00:04:37,380 the time being so I needed to find some 111 00:04:35,940 --> 00:04:39,720 I needed to make some decisions the 112 00:04:37,380 --> 00:04:42,660 first decision was what music what music 113 00:04:39,720 --> 00:04:44,639 do I sing in the car what's music do my 114 00:04:42,660 --> 00:04:47,759 kids dance around the house to what 115 00:04:44,639 --> 00:04:50,639 music I went with pop music because it's 116 00:04:47,759 --> 00:04:52,680 the thing we sing most often and then I 117 00:04:50,639 --> 00:04:58,460 wanted to find Trends I wanted to find 118 00:04:52,680 --> 00:05:01,560 some music to analyze and so I went to 119 00:04:58,460 --> 00:05:03,900 billboard.com billboard is a magazine 120 00:05:01,560 --> 00:05:06,240 that's been around since the 1800s they 121 00:05:03,900 --> 00:05:07,620 are the ones that publish the number one 122 00:05:06,240 --> 00:05:10,080 songs 123 00:05:07,620 --> 00:05:12,180 um of of a year they have the hot one 124 00:05:10,080 --> 00:05:14,280 they have hot 100s 125 00:05:12,180 --> 00:05:15,720 um it is an American Magazine so there 126 00:05:14,280 --> 00:05:17,820 is a little bit of 127 00:05:15,720 --> 00:05:20,100 um consternation there because it's how 128 00:05:17,820 --> 00:05:22,380 Americans sing pop music and ours is 129 00:05:20,100 --> 00:05:25,740 slightly different but but Aria charts 130 00:05:22,380 --> 00:05:28,080 aren't comprehensive enough and so I 131 00:05:25,740 --> 00:05:30,060 needed to pick something that had a good 132 00:05:28,080 --> 00:05:33,180 list of data 133 00:05:30,060 --> 00:05:36,360 okay so I've gone with I've gone with um 134 00:05:33,180 --> 00:05:38,580 pop and I'm okay with American Music so 135 00:05:36,360 --> 00:05:41,340 I went to billboard thinking that I 136 00:05:38,580 --> 00:05:43,500 could find all of the pop songs that 137 00:05:41,340 --> 00:05:45,960 they'd ever hit uh that had ever hit 138 00:05:43,500 --> 00:05:48,360 number one and see if I could grab it 139 00:05:45,960 --> 00:05:50,280 from their website and of course I 140 00:05:48,360 --> 00:05:53,039 couldn't navigate it at all it's just 141 00:05:50,280 --> 00:05:55,919 very difficult to find anything so 142 00:05:53,039 --> 00:05:58,919 handily and I use this term with love 143 00:05:55,919 --> 00:06:00,479 there are some nerds who put some stuff 144 00:05:58,919 --> 00:06:05,100 on the internet 145 00:06:00,479 --> 00:06:08,940 so Wikipedia has a full list of all of 146 00:06:05,100 --> 00:06:15,180 the billboard number one singles of the 147 00:06:08,940 --> 00:06:18,479 70s 58 to 69 the 80s and 90s 2000s 2010s 148 00:06:15,180 --> 00:06:22,020 I did not go into the 2020s 149 00:06:18,479 --> 00:06:24,780 because it's just not a full decade so 150 00:06:22,020 --> 00:06:29,100 I think it's great that there's also 151 00:06:24,780 --> 00:06:32,639 consistency for the most part these tape 152 00:06:29,100 --> 00:06:34,380 these pages are laid out very well and I 153 00:06:32,639 --> 00:06:36,900 didn't want to go and copy and paste all 154 00:06:34,380 --> 00:06:40,139 of that stuff manually so I went and 155 00:06:36,900 --> 00:06:42,419 discovered that pandas has a fantastic 156 00:06:40,139 --> 00:06:46,139 functionality that allows me to put a 157 00:06:42,419 --> 00:06:49,259 URL in and have it read the HTML of the 158 00:06:46,139 --> 00:06:52,440 page for me and then I can say go and 159 00:06:49,259 --> 00:06:55,440 have a look at table two in that page 160 00:06:52,440 --> 00:06:59,039 and grab all of that data as a data 161 00:06:55,440 --> 00:07:03,539 frame which is like saving my life here 162 00:06:59,039 --> 00:07:05,160 okay so the downside of Wikipedia is 163 00:07:03,539 --> 00:07:07,639 that those people don't call each other 164 00:07:05,160 --> 00:07:13,819 very often and so 165 00:07:07,639 --> 00:07:18,539 we had the 20 the 2000s be inconsistent 166 00:07:13,819 --> 00:07:22,020 where instead of hash I have no to main 167 00:07:18,539 --> 00:07:23,340 number instead of artists I have artists 168 00:07:22,020 --> 00:07:26,160 with an a 169 00:07:23,340 --> 00:07:28,860 and a link instead of single I have 170 00:07:26,160 --> 00:07:32,220 single with an A and A Link and instead 171 00:07:28,860 --> 00:07:35,479 of weeks at number one I have weeks at 172 00:07:32,220 --> 00:07:39,780 no dot one like it's just annoying but 173 00:07:35,479 --> 00:07:42,599 uh then there's also uh instead of reach 174 00:07:39,780 --> 00:07:44,220 number one date they had issue date and 175 00:07:42,599 --> 00:07:45,660 there's nothing I could do with that I 176 00:07:44,220 --> 00:07:47,819 just had to assume that they were the 177 00:07:45,660 --> 00:07:51,240 same date for the time being 178 00:07:47,819 --> 00:07:53,460 um I did briefly think that I could go 179 00:07:51,240 --> 00:07:55,979 to the Wikipedia 180 00:07:53,460 --> 00:07:59,520 list of Billboard Hot 100 number one 181 00:07:55,979 --> 00:08:01,620 singles of the 2000s and update it so it 182 00:07:59,520 --> 00:08:03,479 matched the list of Billboard Hot 100 183 00:08:01,620 --> 00:08:06,180 number one singles of all the other 184 00:08:03,479 --> 00:08:08,340 decades but I have actually been in open 185 00:08:06,180 --> 00:08:10,740 source flame Wars before and they're not 186 00:08:08,340 --> 00:08:12,780 very fun and I decided that I was not 187 00:08:10,740 --> 00:08:15,720 courageous enough 188 00:08:12,780 --> 00:08:18,599 okay so but thank you Wikipedia for 189 00:08:15,720 --> 00:08:21,360 giving me that data and then how do you 190 00:08:18,599 --> 00:08:25,560 get the lyrics of all the number one 191 00:08:21,360 --> 00:08:27,840 singles since 1958 well you find an API 192 00:08:25,560 --> 00:08:30,840 and there is a library called lyrics 193 00:08:27,840 --> 00:08:32,700 genius thank you very much lyrics genius 194 00:08:30,840 --> 00:08:35,820 for existing there's a website called 195 00:08:32,700 --> 00:08:39,140 genius.com and lyrics genius will allow 196 00:08:35,820 --> 00:08:42,899 you to use Python to poll 197 00:08:39,140 --> 00:08:46,020 genius.com and get about 1100 songs 198 00:08:42,899 --> 00:08:49,200 worth of lyrics 199 00:08:46,020 --> 00:08:51,660 um it's a bit of a mess to be honest uh 200 00:08:49,200 --> 00:08:53,880 I made it made my life easier because I 201 00:08:51,660 --> 00:08:57,540 didn't have to go and download 1100 202 00:08:53,880 --> 00:09:00,120 songs worth of lyrics by myself but it 203 00:08:57,540 --> 00:09:02,160 was such a mess that I remembered why I 204 00:09:00,120 --> 00:09:05,459 had exited data analysis in the first 205 00:09:02,160 --> 00:09:06,600 place in the cleaning data is a bit of a 206 00:09:05,459 --> 00:09:08,580 pain 207 00:09:06,600 --> 00:09:10,980 okay so this is what the python looks 208 00:09:08,580 --> 00:09:12,360 like you you have to get yourself a 209 00:09:10,980 --> 00:09:14,820 secret key but once you've got your 210 00:09:12,360 --> 00:09:16,320 secret key then you can search for a 211 00:09:14,820 --> 00:09:18,680 song using the single and the artist 212 00:09:16,320 --> 00:09:22,459 that which is the title and the artist 213 00:09:18,680 --> 00:09:26,459 and it will either return or not return 214 00:09:22,459 --> 00:09:30,300 there were some problems with this and I 215 00:09:26,459 --> 00:09:32,279 will talk about them next okay so my 216 00:09:30,300 --> 00:09:35,100 problems 217 00:09:32,279 --> 00:09:37,560 the first problem is that data 218 00:09:35,100 --> 00:09:39,600 codification is really hard and we don't 219 00:09:37,560 --> 00:09:42,120 all call each other or hang out on the 220 00:09:39,600 --> 00:09:44,360 internet and agree as to how we're going 221 00:09:42,120 --> 00:09:49,740 to codify things so 222 00:09:44,360 --> 00:09:51,779 this is from 1958 the Chipmunk song also 223 00:09:49,740 --> 00:09:55,500 known as Christmas don't be late in 224 00:09:51,779 --> 00:09:58,680 Brackets by let's just check this page 225 00:09:55,500 --> 00:10:01,140 this is the literal album cover David 226 00:09:58,680 --> 00:10:02,640 Seville and the Chipmunks 227 00:10:01,140 --> 00:10:06,899 however 228 00:10:02,640 --> 00:10:08,880 in wikipedia.com it is listed as the 229 00:10:06,899 --> 00:10:12,540 Chipmunk song in Brackets Christmas 230 00:10:08,880 --> 00:10:15,660 don't be late by Alvin and the Chipmunks 231 00:10:12,540 --> 00:10:18,660 feature with sorry with David Seville 232 00:10:15,660 --> 00:10:21,360 and ingenious.com it's listed as a 233 00:10:18,660 --> 00:10:24,360 chipmunk song Christmas don't be late by 234 00:10:21,360 --> 00:10:26,940 Alvin and the Chipmunks so 235 00:10:24,360 --> 00:10:30,839 that doesn't match up this happened to 236 00:10:26,940 --> 00:10:33,959 me a lot this is the kind of thing 237 00:10:30,839 --> 00:10:37,019 that I saw a lot in my Jupiter notebook 238 00:10:33,959 --> 00:10:39,420 while I was trying to run my genius.com 239 00:10:37,019 --> 00:10:42,360 um lyric search so there are a couple of 240 00:10:39,420 --> 00:10:45,860 problems here the first one was matching 241 00:10:42,360 --> 00:10:49,560 of data so slight differences in how 242 00:10:45,860 --> 00:10:53,160 artists are named slight differences in 243 00:10:49,560 --> 00:10:56,820 how songs are titled a lot of problems 244 00:10:53,160 --> 00:10:58,440 with feet or featuring and so matching 245 00:10:56,820 --> 00:11:01,019 up was a problem there was also some 246 00:10:58,440 --> 00:11:04,740 connectivity issues apparently lyrics 247 00:11:01,019 --> 00:11:08,339 genius isn't prepared for people to just 248 00:11:04,740 --> 00:11:12,000 pull it with 1100 songs worth of trying 249 00:11:08,339 --> 00:11:14,940 to get the lyrics and so I would have to 250 00:11:12,000 --> 00:11:17,579 run this and I'd keep track of 251 00:11:14,940 --> 00:11:20,220 all of the ones that had failed and run 252 00:11:17,579 --> 00:11:23,100 them again and again until I got down to 253 00:11:20,220 --> 00:11:25,440 a a core list that were actual problems 254 00:11:23,100 --> 00:11:27,360 that I had to go and do manually 255 00:11:25,440 --> 00:11:29,220 um but the rest of them were just it had 256 00:11:27,360 --> 00:11:30,480 dropped out at the wrong time it was it 257 00:11:29,220 --> 00:11:34,260 was a pain 258 00:11:30,480 --> 00:11:36,240 okay so then my other problem was even 259 00:11:34,260 --> 00:11:40,740 with songs that I'd returned the lyrics 260 00:11:36,240 --> 00:11:43,079 for I could get something like this 261 00:11:40,740 --> 00:11:47,700 this is what you get when you search for 262 00:11:43,079 --> 00:11:51,000 Gangster's Paradise by Coolio you get 263 00:11:47,700 --> 00:11:54,779 a review of Gangster's Paradise by 264 00:11:51,000 --> 00:11:57,600 Coolio by dude called the rap critic and 265 00:11:54,779 --> 00:12:01,320 I'm I'm a teacher in my normal life and 266 00:11:57,600 --> 00:12:04,079 so I had to notice I can't stop myself 267 00:12:01,320 --> 00:12:07,800 from noticing that we're going to count 268 00:12:04,079 --> 00:12:12,500 the full stops in this review they they 269 00:12:07,800 --> 00:12:12,500 go to there and then oh my goodness 270 00:12:13,320 --> 00:12:17,820 uh it's a bit of a stream of 271 00:12:15,240 --> 00:12:21,360 Consciousness thing but also like just 272 00:12:17,820 --> 00:12:24,000 punctuate please uh okay so I had some 273 00:12:21,360 --> 00:12:26,160 issues and then I had some decisions I 274 00:12:24,000 --> 00:12:28,620 had to make and some of you will 275 00:12:26,160 --> 00:12:30,060 disagree with these decisions but they 276 00:12:28,620 --> 00:12:32,339 were the decisions that I made and 277 00:12:30,060 --> 00:12:36,120 you're encouraged to go and do your own 278 00:12:32,339 --> 00:12:39,420 projects and fix mine sure so the first 279 00:12:36,120 --> 00:12:41,579 problem is I love Unicode it exists for 280 00:12:39,420 --> 00:12:42,839 a reason it's a very good thing and also 281 00:12:41,579 --> 00:12:46,860 it's very 282 00:12:42,839 --> 00:12:50,459 painful and so I needed words to match 283 00:12:46,860 --> 00:12:53,240 with other words and things like 284 00:12:50,459 --> 00:12:57,180 smart inverted commas 285 00:12:53,240 --> 00:13:00,660 were causing me pain also accents were 286 00:12:57,180 --> 00:13:03,000 causing me pain and so were Spanish 287 00:13:00,660 --> 00:13:05,940 upside down exclamation marks and I know 288 00:13:03,000 --> 00:13:08,300 these things all have a place and also I 289 00:13:05,940 --> 00:13:12,420 stripped them out with abandon 290 00:13:08,300 --> 00:13:16,380 so everything has gone back to ASCII it 291 00:13:12,420 --> 00:13:18,060 was where the world started so the other 292 00:13:16,380 --> 00:13:20,339 thing were that there were some songs 293 00:13:18,060 --> 00:13:22,320 that really didn't fit into my data set 294 00:13:20,339 --> 00:13:25,980 so here's where some of the audience 295 00:13:22,320 --> 00:13:27,420 participation kicks in the first one I'm 296 00:13:25,980 --> 00:13:31,940 going to see if anybody in the audience 297 00:13:27,420 --> 00:13:31,940 knows this song by the image 298 00:13:34,139 --> 00:13:37,220 no okay 299 00:13:38,100 --> 00:13:44,399 okay 300 00:13:39,680 --> 00:13:46,920 so we had Obama it and non-english 301 00:13:44,399 --> 00:13:49,920 language songs I had to strip out 302 00:13:46,920 --> 00:13:52,079 because I was going to be analyzing the 303 00:13:49,920 --> 00:13:53,579 language from an English perspective and 304 00:13:52,079 --> 00:13:55,980 it just doesn't make any sense for me to 305 00:13:53,579 --> 00:13:57,360 apply those algorithms to non-english 306 00:13:55,980 --> 00:14:00,800 songs so there are a couple of these 307 00:13:57,360 --> 00:14:00,800 let's have a look at some others 308 00:14:00,899 --> 00:14:06,570 anyone 309 00:14:03,510 --> 00:14:06,570 [Music] 310 00:14:07,220 --> 00:14:13,620 okay so Macarena and then this one 311 00:14:11,100 --> 00:14:16,160 should be much more likely to to be 312 00:14:13,620 --> 00:14:16,160 identified 313 00:14:16,680 --> 00:14:19,700 there we go 314 00:14:20,519 --> 00:14:24,360 there we go despacito 315 00:14:22,680 --> 00:14:27,240 um and there were a couple of songs that 316 00:14:24,360 --> 00:14:29,339 were number ones but were instrumental 317 00:14:27,240 --> 00:14:31,620 and so they're not used to me at all so 318 00:14:29,339 --> 00:14:33,899 I had to strip those out uh so can we 319 00:14:31,620 --> 00:14:35,760 see if we can identify our instrumental 320 00:14:33,899 --> 00:14:37,680 number ones it's actually really unusual 321 00:14:35,760 --> 00:14:40,320 for a number uh for a song to get to 322 00:14:37,680 --> 00:14:42,240 number one as an instrumental except 323 00:14:40,320 --> 00:14:46,139 especially recently it was much more 324 00:14:42,240 --> 00:14:48,420 common in the in the earlier uh decades 325 00:14:46,139 --> 00:14:50,660 um so this is one anybody know what this 326 00:14:48,420 --> 00:14:53,060 might represent 327 00:14:50,660 --> 00:14:55,100 Rocky yeah 328 00:14:53,060 --> 00:14:58,440 this song 329 00:14:55,100 --> 00:14:59,639 so not Eye of the Tiger but the actual 330 00:14:58,440 --> 00:15:01,860 theme 331 00:14:59,639 --> 00:15:04,920 has a name I forgot to write it down uh 332 00:15:01,860 --> 00:15:07,699 and this one uh it was a meme early in 333 00:15:04,920 --> 00:15:07,699 the 2000s 334 00:15:08,399 --> 00:15:15,620 uh my children said Mom that has lyrics 335 00:15:10,920 --> 00:15:15,620 but four lyrics don't count as lyrics 336 00:15:16,580 --> 00:15:21,420 [Music] 337 00:15:18,380 --> 00:15:24,500 okay we have the Harlem Shake and this 338 00:15:21,420 --> 00:15:27,980 one playing to my audience 339 00:15:24,500 --> 00:15:27,980 yes here we go 340 00:15:29,480 --> 00:15:34,199 Cantina Band from Star Wars so those 341 00:15:32,639 --> 00:15:37,680 were all they're about 342 00:15:34,199 --> 00:15:39,839 um uh 11 songs that are non-english 343 00:15:37,680 --> 00:15:41,519 language and there are about eight that 344 00:15:39,839 --> 00:15:44,880 are instrumentals 345 00:15:41,519 --> 00:15:47,279 um and so they were gone killed Dead uh 346 00:15:44,880 --> 00:15:50,040 okay so I needed a process in order to 347 00:15:47,279 --> 00:15:52,680 analyze what was left I have a lot of 348 00:15:50,040 --> 00:15:56,160 data and I need to work out how to how 349 00:15:52,680 --> 00:15:58,440 to determine what silly is what good is 350 00:15:56,160 --> 00:16:01,019 how do I tell my children that my 351 00:15:58,440 --> 00:16:04,380 decades were the better and so I 352 00:16:01,019 --> 00:16:07,260 invented the Jabberwocky procedure 353 00:16:04,380 --> 00:16:09,959 named because I was going to take a 354 00:16:07,260 --> 00:16:11,940 two-prong attack one was reading ease 355 00:16:09,959 --> 00:16:14,399 reading ease is a thing that teachers 356 00:16:11,940 --> 00:16:17,160 use to classify books 357 00:16:14,399 --> 00:16:20,940 um and it is an algorithm that shows you 358 00:16:17,160 --> 00:16:24,199 the kind of reading age of the text and 359 00:16:20,940 --> 00:16:27,180 this is a book for children and and 360 00:16:24,199 --> 00:16:29,940 nonsense because Jabberwocky is a poem 361 00:16:27,180 --> 00:16:31,019 that is predominantly nonsense uh so 362 00:16:29,940 --> 00:16:31,860 those are the two things I'm going to 363 00:16:31,019 --> 00:16:35,699 look at 364 00:16:31,860 --> 00:16:39,540 the first one was nonsense so over the 365 00:16:35,699 --> 00:16:41,759 decades these are the number of song a 366 00:16:39,540 --> 00:16:43,860 number of nonsense words in the Whole 367 00:16:41,759 --> 00:16:45,899 Decade in all of the lyrics of number 368 00:16:43,860 --> 00:16:48,060 ones 369 00:16:45,899 --> 00:16:49,800 um I had to chop out 1950s because the 370 00:16:48,060 --> 00:16:52,680 number was so low but the number's so 371 00:16:49,800 --> 00:16:55,740 low because 1958 and 1959 don't qualify 372 00:16:52,680 --> 00:16:58,019 as a decade uh so from the 60s then it 373 00:16:55,740 --> 00:17:00,420 goes up a bit for the 70s back down for 374 00:16:58,019 --> 00:17:03,360 the 80s and 90s and then smashes through 375 00:17:00,420 --> 00:17:05,400 the roof in the 2000s and then back down 376 00:17:03,360 --> 00:17:07,319 a little bit for 2010. 377 00:17:05,400 --> 00:17:12,780 and uh if you want to see what that 378 00:17:07,319 --> 00:17:15,179 looks like in the 2000s we have this so 379 00:17:12,780 --> 00:17:18,020 this is across all the lyrics we have 380 00:17:15,179 --> 00:17:22,740 some swear words which I have censored 381 00:17:18,020 --> 00:17:24,020 and we also have a real dislike for the 382 00:17:22,740 --> 00:17:27,179 letter G 383 00:17:24,020 --> 00:17:29,820 every word that ended in ing got turned 384 00:17:27,179 --> 00:17:32,460 into a word that ended in i n and that's 385 00:17:29,820 --> 00:17:33,780 kind of how we got to nonsense so this 386 00:17:32,460 --> 00:17:37,380 is running 387 00:17:33,780 --> 00:17:39,480 all of the lyrics against words.text and 388 00:17:37,380 --> 00:17:40,860 pulling out proper nouns so uh names 389 00:17:39,480 --> 00:17:42,900 names were pulled out because they're 390 00:17:40,860 --> 00:17:45,720 not nonsense but these are all the words 391 00:17:42,900 --> 00:17:49,740 that don't fit either into words dot 392 00:17:45,720 --> 00:17:52,740 text as a dictionary or uh is not a 393 00:17:49,740 --> 00:17:55,020 proper noun or identifiable as a proper 394 00:17:52,740 --> 00:17:58,760 noun and so that's what we had left and 395 00:17:55,020 --> 00:18:02,160 there are tons in 2000s 396 00:17:58,760 --> 00:18:03,960 so now oh I just have to make a side 397 00:18:02,160 --> 00:18:06,720 note that that my husband claims that 398 00:18:03,960 --> 00:18:09,780 word clouds are not data analysis and he 399 00:18:06,720 --> 00:18:12,179 works in data analysis so he's allowed 400 00:18:09,780 --> 00:18:13,919 to mock me for that but also across a 401 00:18:12,179 --> 00:18:17,640 Whole Decade I claim that the lyrics 402 00:18:13,919 --> 00:18:20,160 like grouping together into sizes does 403 00:18:17,640 --> 00:18:22,590 give you some information 404 00:18:20,160 --> 00:18:23,280 so now I have I'm down to 405 00:18:22,590 --> 00:18:25,280 [Music] 406 00:18:23,280 --> 00:18:25,280 um 407 00:18:26,960 --> 00:18:33,720 1069 songs 408 00:18:29,520 --> 00:18:36,660 um and that's a lot of lyrics and I have 409 00:18:33,720 --> 00:18:38,720 tidied them all up and now might be a 410 00:18:36,660 --> 00:18:41,880 bit on the thin side 411 00:18:38,720 --> 00:18:43,620 1069 I like I went with number ones but 412 00:18:41,880 --> 00:18:46,020 maybe at this stage I'm realizing maybe 413 00:18:43,620 --> 00:18:48,419 I should have gone with top tens or top 414 00:18:46,020 --> 00:18:50,220 100s but actually it's taken me a really 415 00:18:48,419 --> 00:18:52,620 long time to get to this point so I'm 416 00:18:50,220 --> 00:18:55,320 throwing it open as an open question 417 00:18:52,620 --> 00:18:57,900 please extend my research I'm not even 418 00:18:55,320 --> 00:19:01,559 sure it qualifies as research but it was 419 00:18:57,900 --> 00:19:03,960 fun and so I'm going to take those 1069 420 00:19:01,559 --> 00:19:07,380 songs and I'm going to apply the reading 421 00:19:03,960 --> 00:19:10,919 ease calculation to them 422 00:19:07,380 --> 00:19:13,340 all right so what is reading ease 423 00:19:10,919 --> 00:19:15,960 uh well there was a dude called flesh 424 00:19:13,340 --> 00:19:18,900 and you might have heard of the flesh 425 00:19:15,960 --> 00:19:21,120 Kincaid formula uh the flesh Kincaid 426 00:19:18,900 --> 00:19:23,760 formula is just taking the flesh formula 427 00:19:21,120 --> 00:19:27,000 and then turning it into like grade 428 00:19:23,760 --> 00:19:29,400 levels for books so if you are reading a 429 00:19:27,000 --> 00:19:32,220 grade level four book then it will be 430 00:19:29,400 --> 00:19:36,000 graded by the flesh Kincaid formula and 431 00:19:32,220 --> 00:19:39,120 so this is the flesh formula and he's 432 00:19:36,000 --> 00:19:42,260 basically read a whole lot of material 433 00:19:39,120 --> 00:19:47,820 and then tried to to pitch it between 434 00:19:42,260 --> 00:19:51,179 100 as being the readable and zero as 435 00:19:47,820 --> 00:19:52,860 being unreadable like very hard and so 436 00:19:51,179 --> 00:19:54,780 that's where those literals come from 437 00:19:52,860 --> 00:19:58,260 but 438 00:19:54,780 --> 00:20:00,059 you can see that the relationship with 439 00:19:58,260 --> 00:20:04,260 my is my thing going to reach yes the 440 00:20:00,059 --> 00:20:07,559 relationship is total words over total 441 00:20:04,260 --> 00:20:11,039 sentences so words per sentence and over 442 00:20:07,559 --> 00:20:13,200 here total no my thing's not 443 00:20:11,039 --> 00:20:16,320 it's there somewhere there we go total 444 00:20:13,200 --> 00:20:17,940 syllables per total words so syllables 445 00:20:16,320 --> 00:20:20,760 per word so these are the two things 446 00:20:17,940 --> 00:20:22,980 that impact the readability of any piece 447 00:20:20,760 --> 00:20:25,919 of text the number of words per sentence 448 00:20:22,980 --> 00:20:28,679 and the number of syllables per word and 449 00:20:25,919 --> 00:20:31,140 you can see from this formula that the 450 00:20:28,679 --> 00:20:33,419 number of syllables per word has a much 451 00:20:31,140 --> 00:20:34,980 bigger impact than the number of words 452 00:20:33,419 --> 00:20:36,960 per sentence but they both have an 453 00:20:34,980 --> 00:20:39,179 impact okay 454 00:20:36,960 --> 00:20:42,360 and now I'm going to show you what that 455 00:20:39,179 --> 00:20:44,760 looks like across 456 00:20:42,360 --> 00:20:48,539 across the different 457 00:20:44,760 --> 00:20:51,960 reading ease from what flesh said was 458 00:20:48,539 --> 00:20:55,620 100 is fifth graders 459 00:20:51,960 --> 00:20:59,220 and 0 to 10 is professional or 460 00:20:55,620 --> 00:21:03,299 postgraduate level okay so I have babies 461 00:20:59,220 --> 00:21:05,460 up here and post grad down here you have 462 00:21:03,299 --> 00:21:09,419 to remember that because it does kind of 463 00:21:05,460 --> 00:21:12,059 feel a bit counter-intuitive that 100 is 464 00:21:09,419 --> 00:21:15,660 the the score on reading ease but it's 465 00:21:12,059 --> 00:21:18,419 actually for the lowest level reader and 466 00:21:15,660 --> 00:21:21,480 zero is for the highest level reader 467 00:21:18,419 --> 00:21:23,520 okay just remember that and as we as we 468 00:21:21,480 --> 00:21:26,220 look at this graph syllables per word 469 00:21:23,520 --> 00:21:27,780 are going up and words per sentence are 470 00:21:26,220 --> 00:21:30,299 going up 471 00:21:27,780 --> 00:21:31,980 okay so I've decided to look at 472 00:21:30,299 --> 00:21:36,260 sentences first 473 00:21:31,980 --> 00:21:36,260 but what is a sentence 474 00:21:36,299 --> 00:21:41,039 Collins Dictionary says it's a group of 475 00:21:38,880 --> 00:21:42,780 words usually containing a verb that 476 00:21:41,039 --> 00:21:44,820 expresses a thought in the form of a 477 00:21:42,780 --> 00:21:47,640 statement question instruction or 478 00:21:44,820 --> 00:21:50,460 exclamation and starts with a capital 479 00:21:47,640 --> 00:21:52,799 letter when written okay 480 00:21:50,460 --> 00:21:55,020 but that's a PhD 481 00:21:52,799 --> 00:21:58,080 and I don't have a PhD and I'm not 482 00:21:55,020 --> 00:22:00,780 getting a PhD between July and this 483 00:21:58,080 --> 00:22:03,179 presentation so I tried some natural 484 00:22:00,780 --> 00:22:04,980 language processing libraries to see if 485 00:22:03,179 --> 00:22:07,919 I could get them to determine what a 486 00:22:04,980 --> 00:22:10,140 sentence was in my lyrics and they ran 487 00:22:07,919 --> 00:22:11,460 really really slowly and still didn't do 488 00:22:10,140 --> 00:22:14,460 a good job 489 00:22:11,460 --> 00:22:17,220 so then I thought I will use the primary 490 00:22:14,460 --> 00:22:20,280 school definition of a sentence ends 491 00:22:17,220 --> 00:22:24,059 with a full stop or exclamation mark or 492 00:22:20,280 --> 00:22:27,000 a question mark and turns out that 493 00:22:24,059 --> 00:22:30,120 lyrics are not well punctuated so that's 494 00:22:27,000 --> 00:22:33,120 really difficult so I came up with my 495 00:22:30,120 --> 00:22:35,340 estimation for a sentence 496 00:22:33,120 --> 00:22:37,740 every two lines in a song is 497 00:22:35,340 --> 00:22:40,260 approximately a sentence and I figured 498 00:22:37,740 --> 00:22:43,380 that since I'm using it and applying it 499 00:22:40,260 --> 00:22:45,419 consistently that that'll do and also 500 00:22:43,380 --> 00:22:49,200 remember that the scent the words per 501 00:22:45,419 --> 00:22:52,260 sentence impact is much lower than the 502 00:22:49,200 --> 00:22:53,820 syllables per word so let's focus on the 503 00:22:52,260 --> 00:22:55,520 syllables 504 00:22:53,820 --> 00:22:57,900 all right so 505 00:22:55,520 --> 00:22:59,460 in school when we teach students 506 00:22:57,900 --> 00:23:01,380 syllables I'm a high school teacher I 507 00:22:59,460 --> 00:23:03,299 don't teach syllables but they the 508 00:23:01,380 --> 00:23:06,480 primary school teachers tend to teach it 509 00:23:03,299 --> 00:23:08,700 with a clapping method so we have 510 00:23:06,480 --> 00:23:12,600 syllable what we're going to do is we're 511 00:23:08,700 --> 00:23:14,960 going to clap with the emphasis so sill 512 00:23:12,600 --> 00:23:18,299 La book can we all clap together 513 00:23:14,960 --> 00:23:20,640 syllable right and that's what that 514 00:23:18,299 --> 00:23:23,220 should look like okay 515 00:23:20,640 --> 00:23:25,700 so it's really hard to teach computers 516 00:23:23,220 --> 00:23:28,679 to clap 517 00:23:25,700 --> 00:23:30,539 and I found it really I I found that I 518 00:23:28,679 --> 00:23:33,720 could not do that so I went and found 519 00:23:30,539 --> 00:23:37,260 some algorithms and this dude Michael 520 00:23:33,720 --> 00:23:40,559 Holtz sure has written an excellent blog 521 00:23:37,260 --> 00:23:42,120 post and the summary is you follow this 522 00:23:40,559 --> 00:23:45,539 algorithm you Loop through the letters 523 00:23:42,120 --> 00:23:47,400 of the word if you reach a vowel a e i o 524 00:23:45,539 --> 00:23:49,980 u or Y 525 00:23:47,400 --> 00:23:52,440 and it's not next to another vowel add a 526 00:23:49,980 --> 00:23:55,080 syllable to the count if the word ends 527 00:23:52,440 --> 00:23:57,720 with e then subtract a syllable from the 528 00:23:55,080 --> 00:24:00,179 count and if the word ends with l e then 529 00:23:57,720 --> 00:24:03,780 put the syllable back so this looks like 530 00:24:00,179 --> 00:24:06,120 this we get to the Y we add one we get 531 00:24:03,780 --> 00:24:09,059 to the a we add one we get to the E we 532 00:24:06,120 --> 00:24:11,760 add one we take one off because it ends 533 00:24:09,059 --> 00:24:14,340 in an e we add one back on because it 534 00:24:11,760 --> 00:24:16,140 ends in an l e all right so it's got to 535 00:24:14,340 --> 00:24:18,480 the three that we identified with the 536 00:24:16,140 --> 00:24:20,700 Clapping method so the algorithm seems 537 00:24:18,480 --> 00:24:21,780 okay and I did run it through a bunch of 538 00:24:20,700 --> 00:24:24,900 different words 539 00:24:21,780 --> 00:24:27,780 okay so then we get to my code 540 00:24:24,900 --> 00:24:31,140 I am getting sentences I am getting 541 00:24:27,780 --> 00:24:33,840 words I'm getting syllables and then I'm 542 00:24:31,140 --> 00:24:35,880 I'm applying that flesh formula which 543 00:24:33,840 --> 00:24:37,799 has the Wikipedia link in there to the 544 00:24:35,880 --> 00:24:41,460 flash formula page 545 00:24:37,799 --> 00:24:44,820 um and then I end up with a number 546 00:24:41,460 --> 00:24:48,240 once I've applied this formula across 547 00:24:44,820 --> 00:24:51,480 all of my pandas data frame I'm learning 548 00:24:48,240 --> 00:24:54,360 a lot about lambdas more than I ever 549 00:24:51,480 --> 00:24:57,000 thought I needed to know and I get 550 00:24:54,360 --> 00:24:59,039 this graph 551 00:24:57,000 --> 00:25:01,159 and you can see here that there are two 552 00:24:59,039 --> 00:25:04,980 things that jump out as kind of weird 553 00:25:01,159 --> 00:25:09,720 something's going on in 1958 554 00:25:04,980 --> 00:25:13,440 and something's going on in 1961. so 555 00:25:09,720 --> 00:25:14,480 let's have a look at 1958 so this is per 556 00:25:13,440 --> 00:25:18,179 year 557 00:25:14,480 --> 00:25:20,280 summarized average per year and so I'm 558 00:25:18,179 --> 00:25:22,500 going to look at 1958 these are all the 559 00:25:20,280 --> 00:25:24,900 songs that were listed in 1958 as number 560 00:25:22,500 --> 00:25:26,159 one and there's only a few of them 561 00:25:24,900 --> 00:25:28,980 because it actually didn't start till 562 00:25:26,159 --> 00:25:31,260 August 1958 but you can see they're all 563 00:25:28,980 --> 00:25:34,860 way up there in the hundreds in the 100 564 00:25:31,260 --> 00:25:39,299 area so they are actually all have a 565 00:25:34,860 --> 00:25:41,820 very like a very low reading age a high 566 00:25:39,299 --> 00:25:46,159 reading ease so that kind of what that 567 00:25:41,820 --> 00:25:51,720 checks out but what's going on in 1961 568 00:25:46,159 --> 00:25:53,760 this is going on in 1961. we have an 569 00:25:51,720 --> 00:25:58,620 outlier 570 00:25:53,760 --> 00:26:00,840 so I was interested what song in 1961 571 00:25:58,620 --> 00:26:04,200 could possibly 572 00:26:00,840 --> 00:26:09,120 be postgraduate level 573 00:26:04,200 --> 00:26:12,679 postgraduate levels reading in 1961 574 00:26:09,120 --> 00:26:12,679 and then I found out 575 00:26:13,100 --> 00:26:21,150 [Music] 576 00:26:17,920 --> 00:26:21,150 [Applause] 577 00:26:23,710 --> 00:26:26,769 [Music] 578 00:26:28,679 --> 00:26:35,760 all right so The Lion Sleeps Tonight by 579 00:26:31,799 --> 00:26:39,240 the tokens may not seem to us that it's 580 00:26:35,760 --> 00:26:42,059 a very complex song but turns out it has 581 00:26:39,240 --> 00:26:44,039 an awful lot of syllables per word 582 00:26:42,059 --> 00:26:47,460 because 583 00:26:44,039 --> 00:26:51,659 um we it is very long and a whim away 584 00:26:47,460 --> 00:26:55,700 has four syllables so it becomes our our 585 00:26:51,659 --> 00:26:58,500 most complex song in number one history 586 00:26:55,700 --> 00:27:00,120 okay so what's my outcome 587 00:26:58,500 --> 00:27:02,940 well if we look at the graph that I 588 00:27:00,120 --> 00:27:07,919 snuck past a little earlier you'll see 589 00:27:02,940 --> 00:27:12,360 that I have a very clear trend line from 590 00:27:07,919 --> 00:27:15,179 1960 to 2020 that shows that the reading 591 00:27:12,360 --> 00:27:19,200 ease is getting lower which means the 592 00:27:15,179 --> 00:27:23,039 reading difficulty is getting harder but 593 00:27:19,200 --> 00:27:25,940 at the same time I have the nonsense 594 00:27:23,039 --> 00:27:30,360 following the Jabberwocky procedure 595 00:27:25,940 --> 00:27:33,539 spikes at 2000 and 2010 596 00:27:30,360 --> 00:27:36,000 so clearly if you're looking at the the 597 00:27:33,539 --> 00:27:39,659 overlap of those two graphs then the 598 00:27:36,000 --> 00:27:42,659 1990s which happens to be my decade is 599 00:27:39,659 --> 00:27:46,340 the correct and only best decade for 600 00:27:42,659 --> 00:27:48,080 singing pop music yeah 601 00:27:46,340 --> 00:27:50,700 so 602 00:27:48,080 --> 00:27:53,039 there are questions still unanswered 603 00:27:50,700 --> 00:27:55,140 about my process but I do want to point 604 00:27:53,039 --> 00:27:57,299 out it's a little bit of a joke but 605 00:27:55,140 --> 00:28:00,480 there's actually much more keeping us 606 00:27:57,299 --> 00:28:02,760 together than keeping us apart if you 607 00:28:00,480 --> 00:28:04,620 look at all of those word clouds for all 608 00:28:02,760 --> 00:28:08,360 of the lyrics in all of the number one 609 00:28:04,620 --> 00:28:14,460 songs in the 60s 70s 80s 90s 2000s and 610 00:28:08,360 --> 00:28:16,620 2010s you see that love no baby these 611 00:28:14,460 --> 00:28:18,059 are words that we're singing a lot so I 612 00:28:16,620 --> 00:28:20,100 think that there's more that keeps us 613 00:28:18,059 --> 00:28:22,620 together than keeps us apart 614 00:28:20,100 --> 00:28:26,220 so this is my 615 00:28:22,620 --> 00:28:29,039 GitHub the whole point of this talk was 616 00:28:26,220 --> 00:28:30,900 that I had a silly idea and I went out 617 00:28:29,039 --> 00:28:33,600 and I did a whole bunch of investigation 618 00:28:30,900 --> 00:28:36,360 and I went through some pain and then I 619 00:28:33,600 --> 00:28:38,159 came up with a talk and if I a high 620 00:28:36,360 --> 00:28:40,919 school teacher from Sydney can do that 621 00:28:38,159 --> 00:28:42,520 then so can all of you 622 00:28:40,919 --> 00:28:44,490 that's it 623 00:28:42,520 --> 00:28:47,619 [Applause] 624 00:28:44,490 --> 00:28:47,619 [Music] 625 00:28:52,260 --> 00:28:57,779 can you have a mug thank you 626 00:28:56,100 --> 00:29:00,860 um any questions for Amanda we've got 627 00:28:57,779 --> 00:29:00,860 time for one or two 628 00:29:08,520 --> 00:29:12,000 thank you 629 00:29:10,020 --> 00:29:13,860 that was great 630 00:29:12,000 --> 00:29:16,860 you mean the 90s being great yeah 631 00:29:13,860 --> 00:29:16,860 obviously 632 00:29:17,400 --> 00:29:23,940 um as our resident expert on what songs 633 00:29:21,240 --> 00:29:26,820 people should sing What song should 634 00:29:23,940 --> 00:29:30,419 people sing at the karaoke birds of a 635 00:29:26,820 --> 00:29:33,000 feather in terms of in Discord 636 00:29:30,419 --> 00:29:36,000 I think we should start with something 637 00:29:33,000 --> 00:29:39,779 from the 90s clearly so maybe we're 638 00:29:36,000 --> 00:29:42,960 doing uh Blaze of Glory by Bon Jovi 639 00:29:39,779 --> 00:29:46,640 I think that's that's my expert opinion 640 00:29:42,960 --> 00:29:46,640 I don't feel stitched up at all 641 00:29:46,679 --> 00:29:52,580 I think we'll end questions there 642 00:29:49,679 --> 00:29:52,580 thank you everyone 643 00:29:54,779 --> 00:29:57,320 I think