Hello everyone, welcome to this session where we will be doing our VITES maintainer talk, and the talk is titled, Scaling MySQL with VITES. My name is Deepthi Sigredi, I'm the technical lead and a maintainer of VITES. Hey everybody, thanks for coming. My name is Matt Lord, I also work at PlanetScale and I'm a VITES maintainer, I've been focusing on V-replication which is one of the things we'll be talking about today. We'll start with an overview of VITES and then we will go on to the migration part of it and a demo. So these maintainer talks are typically structured as an intro and a deep dive and the first part will be an intro. Some of you may have already heard of VITES so you can feel free to let your attention wander in that case until we get to new features because we will be talking about what's new. To start with, what is VITES? VITES is a cloud native database, it's massively scalable and the way it achieves scalability is through sharding and there are really no theoretical limits to how big your VITES cluster can be or how much you can scale with it. It is also highly available and it's compatible with MySQL, both 5.7 and 8.0. So VITES was built as a scaling solution for MySQL and that is its origin story. VITES works with various database frameworks, with ORMs, with legacy code which talks directly to MySQL and with third-party applications. What VITES does is that it presents a logical database view of many physical MySQL instances to applications. And this logical database is what we call a key space. And the physical databases are basically representing partitions of your data. So if you have a large amount of data, the data is being split up into multiple shards and these terms key space and shard are important because we'll come back to them. And the way to think about a shard is that every row in a table lives in exactly one shard and if you combine all of your shards, that is your entire set of data. What VITES is doing when you have an architecture like that is that queries are being routed to the correct physical database. So as far as application is concerned, it looks like a single monolithic MySQL instance but behind the scenes, queries are going to be routed to the appropriate MySQL instance. VITES supports both GRPC and MySQL clients. Basically it speaks the MySQL protocol. And clients can have a single connection to a VITES cluster which behind the scenes results in multiple connections to individual MySQL databases. This is what the VITES architecture looks like. From an application point of view, connections typically go through a load balancer which is not actually part of VITES, it can be any load balancer. Then queries go to the component that we call VTGate. VTGate is a lightweight, stateless proxy which understands the MySQL protocol but can also serve GRPC requests for data. And parses the query, plans the query, decides where to send it. The component to which it ends up sending the queries is called VTTaglet. And VTTaglet is a sidecar management type of process for MySQLD. So it mediates all access to MySQL and it is how we achieve high availability. So there are typically multiple MySQL instances in a shard, in a replication topology, and you have many shards. So each shard has a primary, all rights always go to the primary. And it may have one or more replicas of one or more different types. So there's a specialized type called RD only, which is used for long running analytics queries and so on. So the primary and replicas are running in this replication configuration and VITES will monitor for failures and repair failures and make sure that each shard is always serving, always available. So this management component that tracks the failures and repairs them is called VTORC. In addition to that, there's a control demon layer called VTCTLD through which users can manage their VITES clusters. So for instance, if you want to run a maintenance operation, you may want to actually plan a failover and move the primary to a different MySQL instance so that you can do an OS upgrade or software upgrade or whatever it is, right? And there's also a web UI called VT admin which talks through VTCTLD to all of the other VITES components to provide a management view of the VITES cluster. In addition to that, there is what we call a toposerver. This is a metadata store that allows different VITES components to discover each other. VITES is in production in many places. Some of the notable ones are Slack, Square, HubSpot, and PlanetScale which provides a database as a service. And so has many, many thousands of VITES clusters running. GitHub is also an interesting one because it took them a while to migrate into VITES and they have a very large amount of data. So I sort of talked about this already a little bit, but these are some of the key adopters. Slack has been running 100% on VITES for several years now. GitHub runs on VITES, JD.com in China. They are running 10,000 plus databases on VITES and then PlanetScale's database service. We have a robust community. We have about 15 maintainers. And there are 81 companies from which people have contributed to VITES in the last two years. All of these stats are from DevStats and feel free to go look at them as well. Out of these 81 companies, we got PRs from 47 companies. And there were 200 plus PR authors and 400 plus contributors during that two year period. And obviously, when we say contributions, we are counting non-code contributions as well. So these are issues, issue comments, reviews on PRs, documentation, all of those things count towards contributions. Now, let's talk about new features. We just did a GA release that's with us 18.0. There are several things which are new in this release. And we talk about them in the release blog, but I'll go over a few of those here as well. In addition to that, I'm actually going to cover what is new in the last one year. So some of this may be repetitive for people who went to the KubeCon in EU. But I just wanna make sure that I cover everything that happened since the last KubeCon in North America. So we've done three GA releases in the last one year. And we've also done 12 or 15 patch releases. We typically do a GA release every four months, so that ends up being three releases a year. One of the things that's new are not new, but new is point in time recovery. So we added support for point in time recovery in Vitas several years ago. But the way it was implemented required people to run a third party bin log server. And all the bin log servers that are available for MySQL are either unmaintained or difficult to operate or whatever. It's really not been practical for people to run those things. Or it's just an additional thing that you have to run, maintain, make sure it's highly available. It just adds to the deployment burden. So what has happened in Vitas over the last couple of releases is that we have built out incremental backups within Vitas, which basically just depend on saving the bin logs. And using those incremental backups, we can now do point in time recovery, either to a specified GTID or to a timestamp. And you can actually do this across shards for a key space. So you can recover every shard in a key space to the same point in time. And we'll compute what GTID that needs to be and replay the bin logs until that point. We have experimental support for foreign keys. This is one of the biggest things that's landing in 18.0. Historically, Vitas has said that people can run with foreign keys and certain things won't work. And that is still true that certain things won't work. But the number of things that won't work is much smaller now because we have actually brought the logic of supporting foreign key relationships into Vitas. And currently it only works for unsharded or within a shard. But in the future, we plan to support cross shard foreign keys, which is something that you simply cannot do with vanilla MySQL. We have also added native view support across shards. So a view definition can span data that's across shards and it will work. You will get data when you select from a view that physically lives in different shards. This is, again, something that you can't possibly do with vanilla MySQL if you are doing some sort of application-based sharding or custom sharding. We have much better support for union queries, derived tables, subqueries, all of those things. We've added support for prepare, execute, deallocate through the MySQL protocol. We already had support for the prepare protocol, but now these things work through the MySQL protocol as well. We've built a session-aware connection pool. Previously, if you wanted to override certain system variables on your session, you would end up getting a dedicated connection to the backing MySQL and that could lead to connection exhaustion at the MySQL level, because you were bypassing the connection pool. And that created a lot of problems, so we finally said we are going to make the connection pool session aware so that the same connection can be reused by the next client if the settings haven't changed. We can now do query buffering during migration cutovers and get near zero downtime cutovers for migrations. Previously, this was only supported for resharding within existing VITAS clusters. We also have more efficient replication through support for no blob and compressed bin logs. We have built support for safer, safe MySQL minor version upgrades through the VITAS operator. Previously, we would be shutting down MySQL with fast shutdown and there were minor versions where the upgrade won't work, so that has been fixed. We've built a number of MySQL syntax extensions. The one I want to highlight is VExplain. VITAS has a standalone tool called VTExplain that you can use to see how the queries get routed to different shards. VExplain lets you do that from a MySQL client. We've changed our CLI to use Cobra and that just gives a much better user experience for users of the CLI. And along with that, we've also built a structured server API on the server side that the CLI talks to so that responses are in JSON format and are easy to parse versus just being raw strings that are much harder to parse. We've also implemented or changed our flags to use Viper and this enables us to auto generate the docs and in future we can support dynamic reload of configuration. And we have more efficient connection pooling coming in the next release. It's already been merged to main, but it didn't get into 18. And that's going to be much better than what we have today. And also non-recursive CTE support is coming soon as well. Cross-shad foreign keys planned, I already mentioned that. So now I'll turn it over to Matt to talk about migrating to it as. All right, thank you, D.T. So I'm just going to highlight what features we're going to be leveraging conceptually, a little bit about your application. And then we're going to jump right into a demo. So what this talk is about is, as you can guess from the title is at some point you're going to reach the limits of what you can do with a single MySQL instance. So normally you'd have a replica set with a primary and one or more replicas. But eventually you just can't scale that vertically anymore. You may literally not be able to get bigger machines than you currently already have. It becomes cost prohibitive because the cost is exponential. As you start getting larger and larger machines. Or for various operational reasons it might just not be practical anymore. It becomes much more difficult to do online schema changes, to manage backups, and a whole host of things at some point once you're managing your entire data set on a single server. And so that's when you realize at some point, okay, we're going to have to start partitioning our data set. And that's when the test comes in. That's when most people start exploring different options and that's when they will become interested in the test. And the replication is the technology that allows you to take that single standalone MySQL instance, import that into the test, and in the process, shard that data set as well. And we'll actually, in the demo, we're going to do the two types of sharding that people would typically do at the same time. So one is vertical or functional sharding. So where you say, okay, we've got this subset of tables, which are all related to each other, but they're not tightly related to the rest of our tables. So they may be products, all related to your products, are related to orders, whatever it is. So you can split those out and put them in a different database. And then even, that gets you a little bit of the way and then eventually you realize we still need to horizontally split these tables. And so we're going to do both of those. So where you take half of your table or fourth of your table and that's housed in one MySQL server, the other quarter is on another and so on. So we're going to look at how that actually works in just a second. VReplication is a framework that supports many different kinds of data flows. So we're going to be looking at migrating into the test. There's a move tables command which supports that. But there are other commands as well. So once you get into the test and you're there, let's say you start with just two shards and you realize, okay, sometime in the next year we're actually going to need to split again and go to four shards or could be eight shards, 16, whatever it is. So there's a reshard command which allows you to do that. For online schema changes, it actually leverages VReplication under the hood to execute those. And then there's some additional things, event streams is quite popular as well. So I think as your company grows, you also have to integrate with other systems. A data warehouse, for example, being a typical one. And so VReplication provides an RPC, which then allows you to basically stream. So copy all of your initial data if needed, and then stream changes that are happening across your entire Vittest cluster into an external system. So the Debezium connector, for example, is a pretty popular one. There's a Debezium for Vittest plugin that's used by a lot of the larger shops. There's some additional ones like messaging. We won't talk much about that, but that's, if you're using something like Sidekick, for example, which is Redis based job queue, you can use the messaging feature in Vittest to accomplish that same type of thing without having to spin up a whole other stack just for that particular purpose. Okay, and again, if you have any questions, we're gonna have time at the end. And it can be about what either of us have talked about. It can be about the demo that we'll see coming up, but that'll be immediately following. But this just gives you kind of a visual representation of what the migration will look like. So VReplication includes various primitives. You can see a couple of them here. The row streamer is what will handle the copy phase. So conceptually, you can kind of think of that as a MySQL dump to copy a snapshot of all your data consistent with a particular GTID snapshot. And then the bin log streamer is what you might guess from the name. And that just allows you to replicate data and changes that happen after the fact, which is essentially the same thing as a MySQL replication. So this is just a high level flow of what we're gonna be doing. So in this example, the commerce database is where all of our data is. So that's what we started with when we first created our application. We've gotten to the point now where we can't manage everything with that single instance. And so we're going to split off these customer oriented tables. Those, the customer and C order tables are specifically related to customers. And we can shard both of those tables by customer ID, which is what we're actually doing. So a customer's records are always housed together. Our customer's orders, rather, are always housed together. So you'll have data locality as well. Because even though you can do cross shard reads, of course, there's a performance penalty in doing that as well. So data locality, that's one of the pretty important things when it comes to performance. And we're gonna have two shards, we can see that here. So I'm gonna largely refer to them as shard one or shard two. But the reason it says shard dash 80 and 80 dash is, as Deepthi mentioned, there's a concept of a key space, which is the logical database. And each key space has a 64 bit key range. And then each record gets a key space ID, which is what determines which shard it lives on. So that's represented normally with hex digits. So it'll be 16 digits on either side of the dash. So the shorthand notation for that dash 80 is 16 zeros, and actually dash seven, and then 15 f's, cuz it doesn't include the upper number. And then the next one is 8, 15 zeros to 16 f's. So it's just splitting that particular one in half. And there's a link here if after the fact, you wanna look at the demo, what it actually does, how it works. And then at the end, when we get into the Q&A, we can also look at, if you have questions or you wanna look at something, we can actually peek in a little closer, look at the Vitesse cluster. So what we've set up ahead of time just to save some time. And I've scripted this just so that you don't have to watch me fat finger some commands and then have to hunt down where I've made the typo and spend a lot of the time on that. But we started up a Vitesse cluster, has all those components that Deepthi already talked about. And we have our single uncharted commerce database. But we have these three MySQL instances and that's the primary and the two replicas. So again, that's pretty typical of you, if you're running wherever you're running. That's a pretty typical installation where you have a primary, one or more replicas. So you use the replica for high availability, for additional durability, for backups and many different things. So the only difference in your case, as typically, as in that previous slide with an RDS instance, is that initial commerce database is not gonna be part of the test. So in that case, you would start up an external VT tablet. And that VT tablet then will interface with your on-prem or whatever it is, your RDS instance in that previous slide. And that is what allows that instance to effectively become a part of the test cluster, and allows you to then migrate your data from that external instance into a VT test cluster. So all we have now is that uncharted key space. And we have our C order customer and product tables. And you can see the schema here. They're using auto increment columns, which is pretty typical. We'll see at the end that we actually leverage a VT test feature called sequences that allows us to continue to use the tables in the same way. It's charted, so you can't use auto increment anymore directly, because then you could have duplicate IDs across your shards. So VT test sequences allows you to get that same behavior once we shard the tables. We just add a foreign key. So as D.P. mentioned, one of the big new features in VT 18 is foreign key support. And again, what that really means is that we've moved the management and implementation of that up into the VT gate layer. So that's what gives you that single logical view of your entire VT test cluster. And it allows you as a user, but more importantly, your applications to work with VT tests. And now you're sharded databases, as if it was still just a single mysql of the instance. Now then we try to add, this is demonstrated actually working. We add an orphaned record into the C order table, so there's no customer for that ID.  And just to show what data we currently have in these tables, there's not a lot. We've got a few customers. Each customer has one order, and there's just a couple of products. And now we're going to spend a second key space. So this is the customer key space. And it's going to be starting up VT tablets and mysqld. So now we've got two shards. So in total there's actually going to be six mysqld processes, because we've got one primary and two replicas for each shard. So that's what you see starting up here. And you'll notice that they each have a unique identifier for the cell, which is going to be logical concept in VT tests, which kind of maps to an availability zone or more generally a failure domain. And then they'll have a unique identifier within that particular cell. And that'll come into play because when we start looking at the data and where it actually lives, and kind of demonstrating that everything is replicating as we expect across these key spaces, we can connect directly to the mysqld instances using the socket that each of those have. So now we can see here we're talking to the VT gate. So we've connected to the VT gate process. And if you're using the MySQL command line client or any other tool, whether it be like PHP, MyAdmin, or MySQL workbench, whatever it is, you can connect directly to the VT gate. Just like if it was a MySQL instance. And you can see now we've got our two databases, those are our two key spaces. And then you have the other typical ones that you would see when you're talking to a MySQL D instance, information scheme and so on. So it looks just like we have this cluster that's now spread across nine different MySQL D instances as in VT tests. But as far as the application is concerned, it looks the same as it always did. Looks like they're connecting to that single MySQL D instance and they're able to query both of them just as they normally would. Here you can see what that looks like in the cluster. And again, you can see the IDs here, those will come up shortly. So 301 is the primary for the dash 80 shard and 400 is for the 80 dash shard. So then we're going to actually run a vreplication command. This is move tables and this is what's going to migrate our data. So it's going to migrate it from the commerce key space to the customer key space for these two tables. And it starts up and it goes into the copying state. So that's where it's going to initially start copying all of the data in bulk. And then once that completes, we have very little data, so it was immediate basically. Then it goes into the replicating or running phase and at that point it's just going to be replicating changes, right? So the entire migration could take weeks or even months. It could take if you have a terabyte of data, it could take a couple days to do the initial data copy. And then you may be running where you're replicating changes for some time as you plan the final migration with your application teams and so on. So then we're replicating changes. And the next thing you would typically do is there's another vreplication-related command called vdiff, which allows you to then. So now if we've copied this terabyte's worth of data, we want to be sure before we make any changes. So the application is actually talking to the Vitesse database that it has all of the data that we expect. So vdiff is a very handy tool to just give you that confidence. So it'll tell you whether there was any mismatch overall. And if so, what the mismatches were. If there was an extra role on the source or if there was a difference between the record somehow on other side, then you would see that there. There's safety mechanisms put in place. This is just the routing rules, just to demonstrate there quickly. But the basic idea is that now, remember these tables live on two different databases. And this will ensure that you can't accidentally now query the wrong one. So however, even if you explicitly tried to query either of those two tables on the customer database, it will get routed in VtGate to the commerce side. Because that's where all of our traffic is still going. We haven't switched anything. We haven't actually made any application affecting changes. Now we're going to insert a new customer in a new order. So we did this in VtGate, so this went to the commerce database. And now if we look at the customer database, this is where we're connecting directly to the MySQL instance. So remember 301 was the primary for our dash 80 shard and 400 for the 80 dash shard. And here we can see our new records were replicated as expected from the commerce database over to the customer database. And you can see it's pretty uneven right now between the shards. Most of it is on the dash 80 shard. And that can happen, of course, when you have a small data set. But as your data set size grows, it will be pretty evenly split. I won't get into necessarily how that works. So there's a V-index concept. But by default, we would typically use xx hash as kind of a mechanism to generate that key space ID from your primary sharding columns. So we're using customer ID for these tables. Okay, so now we've confirmed everything is working. We're going to run, you'd run Vdiff again. Typically because you can be in this state for a long period of time as you're building confidence, as you're getting things in place. And so you might run the Vdiff immediately after the copy phase ends, but then as you get to the point where you think you're ready to actually switch traffic, move your applications over, you can run it again just to make sure that everything is correct. And there's no data mismatches. And then you can use the switch traffic command. And what that does, as you might expect, is now it basically flips it. So now, anytime you're reading from the C order or customer table, no matter how you're doing it, it's actually going to get routed to the customer database now. And you can see that reflected here, basically all the traffic has been switched. And this is the routing rules again, just to show you that now that's flipped. Even if you explicitly say, connect and say select star from commerce.customer, it's actually going to get routed to the customer database. And just to demonstrate that replication, now we'll just do a delete. So by default, the application will set up replication going back in the other direction. You can opt out of that, but typically you would want that because you want the ability to revert. So let's say you switch traffic and suddenly application starts getting errors. You want to be able to cut the traffic back over and basically revert that so that things continue to work while you can then investigate what that issue may have been. So just to demonstrate that that's replicating back the other way, we delete the customer. And now we're connecting directly to the customer, the primary for the customer shard, it's unchartered, it's just a single shard. And we can see that now that new customer and its record is gone. So that's a combination of the replication and the foreign key that we added. So this is where that setting up, automatically setting up that reverse replication flow comes in handy. Again, you may realize, okay, now we've moved everything over to Vitesse. But now there's some slight difference in behavior. There's not a 100% compatibility yet with MySQL 8. And all of the query related features that it has, all the syntax. So let's say maybe you realize that something is producing a little bit, results that are slightly different. The output is a little different. Or maybe you didn't realize that Vitesse doesn't support recursive CTEs, for example, is a big one that we're working on now. So then you can reverse the traffic back, leave things running. You're back to the starting point where you were before. And you can take however long is needed in order to address that particular situation on the application side or whatever it may be. And then once you've done that, then you can switch traffic again. And you can switch back and forth as many times as you need. Until finally, everything is good, and then you can complete. So these are all sub-commands for the move tables. And you can see the client binary here.  So the tables by default on the original commerce database will be cleaned up, along with all of the artifacts from our actual migration. So the workflow itself, the routing rules that we looked at before, all that stuff will be cleaned up. And here you can see, remember I mentioned the test sequence feature. That's what, in the demo, we added those as well. So that's what allows us to remember we were using auto increment columns, which is typical on those tables. So you can continue to have that same behavior, even though now the table is sharded. So VTGate will basically take over the management of those effectively auto incrementing values. This just shows the cleanup, and that's it. We've got- Let's switch back to the slides. Okay, so we've got not quite five minutes, but we've got two and a half minutes for questions. And hopefully answers. And it can be about the demo, it can be about the slides. Anybody has any questions? Remember the demo also, and the slides, which are already up on skedge.com has a link to the demo as well. Which is just a scripted out version of what you would normally run, or what you would typically run just as an operator. But just saved us some time. On the slides, it looked like it said CDC. I'm assuming you mean change data capture, is that correct? Yeah, sorry, there's so many acronyms and initialisms. My conclusion is that in some environments, say if we have a pipeline that's reading and consuming that, and the pipeline itself goes down, then you're at risk of using your database storage. What is the solution for that? Do you have to just move the CDC data out of the database itself into some other S3 buckets, or how do you deal with that type of data? So that's a pretty common issue. So we handle that through resuming effectively. So that was one of the things that I mentioned on the V-replication slide. So remember VTGate is the component that gives you this single logical view of your entire data set, spread across however many MySQL instances and charts. So there's an RPC that VTGate has, which leverages V-replication, which allows you to say, you say, I want all of the changes. Well, from the beginning, you just say, I want everything from the beginning for these tables. So it'll give you a snapshot effectively of all those tables and their state, and then start replicating. But each event that gets replicated in that CDC stream also has metadata, like the GTID, which effectively gives you a position in that stream as well. So if your consumer goes down for any period of time, you can resume from where you left off using that metadata that was in the event stream. We are actually out of time. So there are some resources that you can join. Okay, we have one minute. So we have the website link, the docs, tutorials. You can go to the source code on GitHub. Please do join our Slack workspace if you're interested in being a part of the community with us.slack.com, should be easy to remember. And you can scan this QR code to provide feedback on our session. Thank you very much for attending, and we'll be right here to take more questions if there are any. All right, thank you.


All right, all right. All right, I'm in a very good mood right now. I just got an email saying that the motorcycle Will be ready by 4 p.m. Today today taking it home Hmm. Oh, he's excited for the morning. Oh, he's excited that it's Friday Friday morning. That's how I'm feeling in my mind right now too in my mind. I'm running around like that But my body is like ho ho Let's get some coffee in us first Like a very nice fire pitch man But you can't catch me. I bet you're right diesel. We're not all morning people like you Okay, that's enough running for one day Oh, here they go You guys You guys It's too early for this stuff Hey, I think they're arguing about who's more excited that it's Friday. All right guys come Come on in. We're done. Come on Today is supposed to be the day I'm excited. I shaved my head and everything for it cut my hair Other than it being Friday, that's good already in itself. It's already gonna be a good day. The sun is shining Today's supposed to be the day when the shop that's doing the safety certification on the motorcycle I want to buy it's it's supposed to be done today. The tire is supposed to arrive today and be installed today Let's see if they pull through. Okay. I'll believe it when I see it at this point I'm not gonna get too excited, but today is supposed to be the day So we'll see what happens Kind of interesting that it took them 10 days to get a tire from like the next province over I mean, I'm a truck driver. I know it only takes two days to get there Today is they said that today is supposed to be the day let's see if they pull through with a little bit of luck I will be pulling it home on the trailer today after work. I Hope so because it'd be really cool to have it for the weekend. But if not, well, it's out of our hands, right? I don't know what's going on. Maybe there was a mix-up in the delivery that happens I know it doesn't take 10 days to get here from Ontario. Like we're like I bought it from a co-worker, right? So we work in trucking We know when there's you know, like we know when they're talking we know how long things take to get places But maybe it's out of their hands, too. I don't know. Maybe the tire had to come straight from Japan I mean the bike is a mo it's a Yamaha, right? So Get the tire from Japan. What are we all a lot of tires? I Wouldn't be surprised we're all out everything else. It seems there's a shortage of everything Anyway enough about that We're going trucking today. I have no idea what they have planned for us I was supposed to go up to Arbor and See my friends up there. I like the shippers up there. They're fun guys to talk to and hang out with and Go in there today. The highway driver wants to go pick it up himself. I'm gonna go and do something else then We'll find out when we get there today As long as at least one person is moving faster than me on the highway I'm happy I don't really I don't speed anyways because my driver's license is kind of like the most important thing I possess When it comes to work and you know paying bills and stuff. So I'm not a speeder But I actually drive kind of slower, right? I Know people like to go faster, especially in the morning. I know because they're always riding my rear end Want to go faster?  Sometimes I get a one-finger salute.  Just a little bit. I like it that way. I Have matured a lot since I was a kid. I've learned so many lessons for some reason in the mornings That's when I reflect the most. I feel like I'm most clear-minded while I'm sitting eating my breakfast at home alone It's quiet. I sit there and reflect on my life Bad decisions I've made in the past how I can make better decisions in the future How I've treated people badly in the past and how I want to make this day different That I want to treat people better every day And learn from mistakes I've made in the past for some reason in the morning That's when I have the most clarity. I get to work. I get the blood pumping and all of a sudden I'm just one track mind go go go go go and in the evenings Especially Friday evening. I'm not thinking about anything that deep No way. It's the weekend thinking about mowing the lawn So what point in the day do you have your most clarity when you have the most clear mind when you can Truly self reflect on yourself. It's hard to criticize yourself sometimes What part of the day is it when you can look back at the day before or maybe even years before for today I was looking back at when I was in high school And uh, you know, there's times when I was kind of a mean guy I'm a mean guy to friends I had then and you know, maybe The fact that I see them on facebook now sort of triggers it. I'm like, you know what? I remember that one time I said that to them that was really mean I wish I wouldn't have said that I wish I could go back and take that back And then I sit there and I self reflect well from this day forward. Let's make sure That in the future I never have to look back at today And regret anything I did or said today So when I'm I'm 33 now. So like when I'm 60, let's say and I'm looking back at today on this vlog today Or and I remember something that I did or that I said, I don't want to have any regrets I don't want to be like man. I wish I wouldn't have said that That was kind of mean I want to be a positive thing in people's lives I want people to remember me and have good memories of me because people won't remember what you say to them really They won't remember but they'll remember how you make them feel So it's it's not so much about what you say. It's about how you make others feel and I want to make others feel good you know These are the things that go through my head in the mornings and I have to Seize them and take it like take them to heart right when they're in my head because like I said Once I get to work get the blood pumping get the gears turning For some reason those those kind of things are just I got things to do. That's all I'm focusing on. I'm a man. I only only focus on one thing at a time I don't know. How about you guys? How about you guys? What are you guys? What point of the day is that for you? Is it in the evenings the mornings at lunch? Am I the only one? Every morning every morning Somebody's getting a spanking. We were just talking about this. You see This is why I make sure I'm not driving the fastest on the highway Slower down to 60 Let's see who it is. Let's see who it is Getting a spanking on the way to work That's exactly what I mean I'm gonna make sure that's never me People might recognize me around here and I end up on the facebook or on youtube Look Trucker Josh got a spanking. That wouldn't be good. I'm in the mood right now I just got an email saying that the motorcycle will be ready by 4 p.m. Today today taking it home today So before we can go and get too excited about that let's get excited about this I got some stuff on my trailer here Faking these boxes all the way to the other side of the city. I'm on the southwest corner of Winnipeg right now We're bringing it all the way to the east side of Winnipeg so Long journey ahead. Good thing I packed a lunch Should take us 15 minutes to get there 15 whole minutes So it shall indeed be a good day. It will I broke another one of these uh These mounts right here. Let me get my Lookers off so I can see it On the bottom here Do you guys any of you who make videos or deal with go-pros all the time? Do you guys have the problem too with these things here? Always breaking off like one side or the other or both I have to order more of these now because this is my last one and I like the ones that have this little swoop in there because then I can Look at that right and it could be a chest mount Which is probably what I'll be using on the motorcycle because I don't want to put uh I don't want to put a mount on my beanie helmet. I think that'll look kind of funny We'll see see I gotta figure out how I'm gonna mount the camera on that But I was thinking maybe just a a chest camera would work But don't worry about that later. Let's let's get finished with this first Feeling good looking good. What's the saying? Looking good feeling better Or feeling good looking better drop this off I've got to do some maneuvering around there. They need some freight and move around as a big compound So I got to take some crates like this from one end of the compound drop at the other end of the compound And then I pick up another full load and you gotta bring that to il de shane which is right close to work So that was fun But we're not gonna focus too much on trucking today Because we have other things grabbing our attention There she is I'm gonna load her up on the trailer right away take her home. I already took her for a spin She's beautiful. I'm so excited Can't go fast enough.  I know I gotta grow up I was just talking about how mature I am this morning And what I'm gonna do is I'm just gonna ride it right up to the center here tie it down And rush home and then I can get everything done at home. I'm gonna go for a ride there Crash the bottom of the bike on hold it on purpose So we're gonna tie her down so she's straight not leaning on the foot peg But it was pretty close, eh? I didn't want the bottom of the frame to scratch on the trailer and get hung up It's my first time loading it up. So I think it looks pretty good though polish it up with some bullsnot once we get home Probably tomorrow I'm gonna take it for a ride tonight. No time for polishing I'm going riding So it's got Vance and Heinz exhaust That is aftermarket. It's not the custom exhaust as you can hear. It sounds a lot better It's very comfortable It's gonna be a nice cruiser There she is All tight Ready to go home One of the perks of hauling stuff for a living You got a pretty good idea how to tie it down.  I waited this whole time And if it fell over or fell off the trailer or something Oh people are messaging me. It's just telling people that I got it It'd be a nightmare if something happened to it on the way home That's why we make double sure Off we go The reason I'm trailering it at home. It's because like I was telling you before in past vlogs I bought it off a co-worker And uh, I could ride it home now if I wanted to. I have my helmet and gear and everything However, uh, I don't want to Uh, leave my pickup here then have to get a ride back here to get my pickup I'll take them both home at once That's what the trailer's for So I rode into Le Broquerie, which is the town just east of Steinback Just behind their uh, their hotel bar here Figured I'd do a little walk around with you here It rides really nice Uh, the one thing I noticed is it feels like it could use another gear On the highway, uh Once I get up to highway speeds It feels like it's a five speed. It feels like A six speed transmission would be Better because it still has a lot of power and torque at that speed But you're sort of at the higher end of the fifth gear So it'll keep me out of trouble speed wise. I'm not going to be speeding down the highway in this thing too much And it's loud too But I've been noticing some noticing some discoloring on this one here And I have to clean that off Regularly, I'm sure But it's definitely not stock exhaust. You hear this thing? I probably shouldn't rev it up too much here. We're at the hotel Why don't we go to a place where it's more appropriate to make some noise and I'll show you this thing how loud it is Pretty impressed it sounds a lot bigger than it is I've got to figure out some kind of uh mounts on here though, you know I got nothing on here yet I got this here a lot more storage on this bike. I got this here plus the two crusaddle bags on the back here Makes it very easy to take stuff with me.  It's only got it's in miles an hour So it's got 8,979 miles on it right now Maybe close to 100. No, I bought it with 8,912 So I've put just over I don't know just about 80 kilometers on there 70 kilometers No, that's miles. I just told you it's miles an hour That's gonna mess with me because this bike must have been sold in America first Because the kilometers an hour are on the inside and the miles an hour on the outside and the odometer is in miles An hour. That's what was going to mess with me. So I've driven it about 80 Or 70 miles, which yeah, it would be just over 100 kilometers. So I was right I don't have to get used to that I gotta get some mounts on here that chest mount would be right about here. I don't know what kind of view that would give I don't want to put any mounts on my helmet I want to keep my helmet looking nice and uh clean. I don't want any sticky mounts on there So I'll have to figure something out. I want to get a A handlebar holder for my phone so I can have my phone here and use it as the GPS And see if someone's trying to get a hold of me. There's an emergency or something. Someone keeps calling me I know to pull over and Let someone's trying to reach me I'll probably get newer custom mirrors yet, but Let's go to a Place where we're not right beside a hotel probably wouldn't be a good idea to make a bunch of noise right outside a hotel Just thought of that All right, we're by ourselves here now This driveway goes to some private property. We'll stay off of there But yeah So this is uh the ignition up here kill switch and hopefully the camera on audio doesn't justice So the sound was important to me when looking for a bike Might not be important to everybody, but I want a bike that sounds good I want my pickup to get uh, I want to get the exhaust on my pickup as well Like it's I don't want it to be obnoxiously loud. It's still pretty light compared to bright days But today these are awkward video yet just about this bike once I get it all pulled


Thank you, Vince. Good morning everyone. Yesterday we heard some very impressive and interesting results from the Lost Frontiers project, which really is showing us the way forward. What I want to do is to expand on the significance of submerged landscapes in a global context, the themes that they're relevant to, and the challenges that I see lying ahead of us. I think all of us are embarked on a research agenda that in my view is going to transform the way we look at world prehistory or world history, as we should call it. I shall pick up on some of the topics that James Walker talked about at the end of yesterday's session. And also what I had to say will serve as a sort of introduction to topics that other speakers in this session will talk about in more detail. Obviously there's a lot to cover in a world perspective and I will skip rather lightly over some issues. I will just put the PowerPoint on. Here we go. Now, I should confess that I am a terrestrial archaeologist I was trained as a terrestrial archaeologist I've been practicing terrestrial archaeology for all of my career. And with a particular interest in in coastlines and shell middens and the human impact of geologically unstable landscapes. I was aware right from the very beginning back in 1970 that there was a problem of missing evidence that like most terrestrial archaeologists, I was very skeptical that done about it. How would one set about it, what would be left to discover underwater, would it make any difference. And I think many people still have that feeling. 18 years ago I realized that I had to follow the logic of my own argument and get engaged in underwater archaeology, and I since become involved in a number of projects in many parts of the world with collaborative teams. There is growing momentum and worldwide interest in this problem, and that the archaeological investigation of continental shells is a worldwide challenge. And there's worldwide interest in how to meet that challenge. I should say that I still practice on shore archaeology and in an ideal world one should combine the onshore and the offshore work and try and integrate them. There are two very simple facts that have been staring us terrestrial archaeologists in the face for some many decades now, so simple that we've ignored them. Rather like the proverbial elephant in the room, we somehow hopes that we could carry on without recognizing the problem. I don't think we can go on doing that the first very simple fact, well known, but with huge consequences, and that is at sea level has been lower than the present for most of human history. This is a typical sea level curve generalized curve over the last 200,000 years, and for 95% of the time, sea levels have been lower than the present. And it is, of course, that if you want to know about the deep history of human interest in coastlines marine resources maritime activities, we're missing most of the evidence underwater. There are occasional bursts of coastal archaeology obviously after modern sea level established we see a vast explosion in numbers of coastal sites shell mounds hundreds of thousands all around the world. Back at the last high sea level 125 years ago there is a spike in the marine signatures of some coastal caves. Many archaeologists would like to see this as evidence of intensification associated with a modern human revolution, or a post glacial revolution. I think probably what we're looking at is simply a change in the visibility of coastlines. Of course there are caves coastal caves dotted around the continents that take us back to the last glacial some of which have fragments of evidence about collecting shellfish and fishing. But that's a very fragmentary and incomplete record and doesn't really help us to illuminate what people doing on these submerged coastline. And of course, this cycle of sea level change is on back into deeper into human history to half a million years, 800,000 years and even beyond. The second fact that we have to look at and this is Simon Fitch's very useful map showing the extent of drowned landscapes, various estimates but in round figures we're talking about 20 million square kilometers of extra land. If you want to know what that means on the ground, think of the size of the present year land mass of Europe and multiply by two. The southern hemisphere example take Australia and multiply by three or the whole of South America is a huge territories, and they're all missing from the record. So we're not only missing coastlines and what people were doing down on the shore. We're missing very extensive terrestrial territories. Coastal lowland some of which extended for 10s even hundreds of kilometers inland. This is a huge gap in our record we know it's there, and it's time that we tried to do something about it. All this drowned territory, a lot of it was very attractive territory coastal lowlands typically have milder climates better water supplies. The lower catchments of rivers and streams springs which are believed according to the coastal basis theory were more strongly flowing on the exposed continental shelf greater ecological diversity greater productivity for plants animals wetlands mangroves, generally speaking, relatively attractive territory, especially important during glacial periods when global climate generally speaking was more arid and water and more severe limiting factor. I don't want to over exaggerate this not all coastlines are uniformly good and not all hinterlands were uniformly bad but the balance of advantage. Very often, I suspect was towards these coastal lowlands. That is why they're so important to learn more about. Just a little bit more detail about sea level curves. This is Kurt Lambeck's 2014 curve. This is a curve of ice equivalent sea level, the amount of variations in the amount of water in the oceans, leaving out of account entirely issues of tectonics and isostatic adjustment and so on which greatly complicate the measurement of relative sea level, especially in places like the North Sea. Several things to note about this. First is that sea level stayed low, the last glacial maximum below 120 meters with little variation for nearly 15,000 years. Plenty of time for coastlines to become established marine communities to become established people living on shorelines to repeatedly visit locations often enough to accumulate archeologically visible signatures. When we look at these sea level curves, it's very easy to imagine that sea level was going up and down like a yo-yo in the Pleistocene and then stopped at 7,000 years ago and entered a period of stability in recent times. We have to be careful how we interpret these diagrams sea level didn't actually stop rising 6,800 years ago it has continued to rise slowly through about three meters present day. Also, when we see a steep line like this it's very easy to over dramatize the effect of sea level rise, the actual rate of sea level rise, the fastest rate according to the Lambeck diagram was about 1 meter, 1.2 meters per 100 years. Obviously the impact of that will vary depending on the topography of a coastline, but that's not a lot of sea level change. And by the way, that's the rate at which sea level is rising now. We are predicted to see sea levels rising by about that amount, meter to a meter and a half over the next 100 years. So there are cautions to state about sea level change and our interpretation. Themes, well, there are so many that I can do barely more than list them. Think about population expansion out of Africa. The significance of land bridges, we know there was a lot of land in the Aegean, the Arabian Peninsula and the so-called southern dispersal route. Submerged landscapes are significant in that region and there is a lot of controversy about the significance of those submerged landscapes for dispersal, as opposed to climatic changes periodically turned the interior of the Arabian Peninsula green. Controversy about the southern coastal route around the Indian Ocean Rim. Was it there? Was it not? Well, we won't know answers and resolutions to these controversies until we start investigating those submerged landscapes. They don't look very extensive on a map of the scale, but even a small extra increment of land at low sea level could be very significant. Then we get to this huge hole in Southeast Asia, two million square kilometers of ground landscape there alone and a comparable area in Australia. And those drowned landscapes hold clues to the movement of people into Australia. They were the places that people set off from on their journeys across the sea and these drowned landscapes in Australia were the locations of first landfall. Helen will talk a lot more about that later. It's the same story in North America. There's now intense interest in population movement across the Bering Land Bridge and then around the edge of the ice sheet. We know that sites were present south of the ice sheet and people must be going along ice-free corridors in the Northwest Pacific or island hopping. There's a lot of interest in this and a growing number of underwater sites and studies on both the Pacific and the Atlantic coastlines of North America. Intensification of marine resources development to seafaring was obviously going on during these low sea level periods during the last glacial colonization of high latitudes. The North Sea and Scandinavia and Scotland theme again happening when sea level globally speaking was lower than the present. Turning to the Mediterranean, we know that people were crossing to islands in the Aegean at least 12,000 years ago, perhaps much earlier. And that early farmers had a maritime component, as we know from those very interesting submerged sites along the coastline of Israel, must have been carrying their crops and their domestic animals by boat across sea crossings. And that that sort of maritime route was a significant pathway for agricultural expansion into Europe. And again, when sea levels were much lower than present, and where were the sites and the settlements and the harbours of these early seafarers? Well, many of them are now underwater. Both of cemetery settlements and coastal environments, they're where you expect bigger settlements and permanent settlements to get established. And probably this is something that was happening very early on. And then the big theme, of course, is how do people react to these sea level changes, not only sea level rising but sea level falling and exposing new territory to move into. When sea level rises, there's not a lot you can do. You can move if that is not too disruptive and the shoreline is not moving too fast. There are some defenses and there's some interesting evidence that this was happening at least 7000 years ago again on one of these submerged sites on the Israeli coastline. You can intensify other aspects of your economy. You can praise your gods. There is some speculation that the concentration of megalithic monuments and funerary ritual sites on some coastlines may symbolize that sort of response to the loss of ancestral territory by sea level rise. There are a lot of interesting questions here. Sea level change has been endemic in human history. And we should pay attention to it and it's been a very dynamic factor that must have interacted with the ways people viewed the world and established social and economic networks. Challenges, lines of investigation. Really I can only sort of in short order describe what they are and say a little bit more detail about some of them. Mapping of the inundation landscape is obviously going on. We heard a lot about that yesterday. There was a whole raft of new technologies, techniques, approaches that are being developed. I've done some of this work in the Red Sea and elsewhere. Other people are doing it. This is really the first step. What was that now submerged landscape like as a landscape of human potential? Where are the animals, the plants, the topography, the rivers, the coastlines, the hills, the valleys, the wetlands and so on. Finding archaeological sites and materials that of course is a huge challenge. Most sites that are known have often been found by chance by people walking along the beach and seeing things poking up in the intertidal zone. Sports divers, fishermen, public engagement is important here. And monitoring of what's going on on the shoreline is really a very valuable activity and has been responsible for recovery of many sites. We've got more than 3,000 fine spots underwater in Europe we know about. So there's a lot of material there waiting to be discovered. Obviously life gets more difficult when you go into deeper water. Predictive modeling is being practiced in a number of places, sometimes leading to the discovery of sites and sometimes not. And I think the failures so called are actually just as important as the successes because every underwater survey is teaching us something new about the nature of the sea bed and about the visibility or the lack of visibility of archaeological material. And that leads to what I think is now turning out to be a very important field of study. So what is it about sea level rise that means that some sites are destroyed, or obscured or disturbed, and other sites are preserved. This is the whole area of the study of site formation deformation, taffonomic issues. Really, it's difficult to enunciate any sort of general principles here. But to try and build up a series of case studies. If there are principles number one is that most material is vulnerable to erosion or damage as sea level rises. The real gets exposed to wave action and shallow water currents. But nevertheless, some material does survive. Why in some places, not in others, shell middens and caves and natural targets. But in fact, I think many of them have been removed or washed out or deflated in some way, but some haven't. Refuse areas I will say something about in a moment. Collaboration with offshore industries has produced spectacular finds and we'll hear more about that later. Certainly in Western Europe, legislation demands that offshore developers conduct preliminary work and they often have a lot of money and can give a lot of help. International networking and collaboration again, I'll say a little more in detail about that. There are a number of big networks, splash costs, well known. The Americans are trying to develop something similar that may or may not be called Aqua Terra, Splosh, the Southern Hemisphere, South Africa and Australia, Marginal Seas and so on. The scale of the work that we're engaged on here and the challenges really do demand large scale collaboration across disciplines is the norm in archaeology, but also across national boundaries and collaboration and networks that are worldwide. And because there is a big challenge here and a lot of energy and resources, resources need to work in concert meet those challenges. Something about preservation and toponomy. Venus sites are often held out as exemplars of the wonderful preservation preservation of organic material that get in underwater sites. It's not quite exactly like that. This is Tuber in V, which is one of the most famous of the underwater sites. What we're looking at here is actually what the Danes call a refuse area. The site itself was on dry land, but offshore is where a lot of material was abandoned or thrown into the water and sunk into the very soft sediments in that shallow water. This is how they got preserved and buried in anaerobic sediment. And this was before sea level rose. The actual dry land part of the settlement, the important bit has largely been eroded away except for occasional human graves, which of course were already dug into the soil and to some extent protected from wave action as sea level rose. But most of what was on the dwelling area of the settlement has gone or it's just stone tools and the occasional pit, post hole or other hole dug into the ground. There's quite an interesting analogy here with Lake Edge Science star car as a classic example, we'll hear more about that later. The organic stuff gets preserved because it's been thrown into the shallow water into the, the sort of swampy zone at the edge of the lake on dry land you basically have stone tools and post holes. And that's all that's left. And there is a paradox here that if material is going to be preserved. It's got to be buried under sediment during or before sea level rises, but then it ceases to be visible until something starts eroding it, whether it's human action, commercial activity or submarine channels. Or if one can have technologies that can actually see beneath surface, of course there's a lot of experimentation going on with those sorts of techniques. Shell mittens are a great interest to me. We've always assumed that they would be washed away, especially the open air ones which are the interesting ones. We have underwater shell mittens in Denmark now, number that are known. Also in the Gulf of Mexico, there's work going on on these sites recently published in these publications just the other day. The problem, of course, of disentangling water anthropogenic shell accumulations from natural shell accumulations on the seabed. And part of the, the technique here and the strategy is to look at geochemical and mineralogical signals in narrow diameter that can be pushed into the subsurface. SplashCos is one of these networks funded by European money, the tune of about half a million euros, and has really been a powerful accelerant in the development of the field in Europe with money for training for publications. It was a huge enterprise and it leveraged and stimulated a great deal of new research and grant applications, and so on. And influence quite significantly policy makers, we brought together heritage managers, industry representatives, marine geosciences, archaeologists, and so on. And also there are a number of publications, current count seven edited volumes came out of that networking, the ones in red freely available on the internet open access or downloadable and two big websites, you can find them on any internet search engine SplashCos is the network website with all this information. The SplashCos viewer is an online database that was also created as part of the SplashCos enterprise and that again is publicly accessible. So we are, in my view, embarking on new research agenda I still think we are in a pioneer phase at the beginning of what is probably going to turn out to be a 50 year research agenda, but I'm convinced that there are going to be new developments and they're going to change our view of world prehistory. 20 years ago, Nikki Milner and I published a paper posing the question are coastlines central or peripheral. And interestingly, I think the answer is, they're central, and that they have been marginalized by conventional views, which are mainly Eurocentric and Anglicone about the nature of prehistoric developments is a basically an on land process. And the dynamics that go with sea level change have played a very significant and so far under recognized role in world prehistory. So plenty to do, and plenty to think about, and a lot of new work waiting to be done. That's, that's me finished. Thank you. Thanks. Thanks, Jeff there. I'm sure you'll be around in 50 years to see it through as well. Right. So far, please do send in your any questions there's a comment more than anything from Trevor Faulkner about sea level rise and Swedish Baltic coast at 0.3 to 0.5 millimeters per year. I presume. I'm just trying to read these. What is the question that seems to be a statement. Okay, but I but I myself have a question. Yes, it's given that your it's a global talk. Well, how do you think the government strategies are operating in areas that you're active within it. I mean, you know, we've, we, everyone is talking about the level of resource needed. And these, this is clearly good. Even, even if firm industry is generous and presuming there must be action on government. It's a very mixed picture. As far as I know, there's a lot of talk and a lot of lip service, but of course everything lies in the implementation some countries are signed up to the UNESCO protocol on underwater material but signing up to it is one thing implementing it is another. There is EU legislation for those countries that are EU members, which has proved very productive and big industries, of course, often see the public relations benefit of putting money into some archaeological investigation is peanuts as far as they're concerned to spend a couple of million on some archaeological research with their billion dollar billion pound budgets, but with a good return in terms of public relations. In Australia doesn't yet cover indigenous archaeology only historic Rex and the airplane, so on. Saudi Arabia, nothing much there at the moment there is interest, but inevitably, even with there is government legislation, it all depends on the money. And even with monitoring, there may not be much incentive spend a lot of money on mitigation work. There's a question from Harry Robson. Great talk Jeff, we all agree. Are there any hotspots where you envisage further submerged shell mittens to be found. I mentioned briefly but didn't really expand on it certainly around the coastlines of the Gulf of Mexico, Southeast corner of the United States, Georgia, Florida, coming around that coastline. A lot of this material is now beginning to be discovered. It has been known about but as I said it's quite difficult sometimes to be sure that you've got a logical site rather than a natural feature. I think these shallow coastlines are promising and of course that's where you would expect to find the extensive mud flats and shell beds that generate the volume of material. I think we're feeling our way here. The big turning point will come and I think will bring a lot more people on board when we start getting a material as much deeper levels, which of course will be much earlier in date 20,000 60,000 years ago and we don't really know how shell mittens or any other sort of material would be preserved at that sort of depth and how we would discover it, but I think those are challenges that we should busy and try and meet future.


So Neil McGee, what's it like around Maverick Allen this week, obviously preparing for a county final, I would say there's a nice feeling amongst the group? Within the group there is, it's quite enough buzz around the parish at the minute like, but see the right put flags up and stuff there last night, so probably buzz will pick up now over the weekend, but it's been fairly low key so far, like a lot of our boys are in Dublin, so it's about you don't get together much during the week, so of course you get your work done. Well, when you do get together, I take up the aunties up for it then, since they're not about earlier in the week is it? Oh, big time I, so we just need to make most of the weekends and they can get home like, the director James there just passing on his way home from Dublin like, so we just need to make the most of the weekends, Saturday, Sunday, make every minute county, because we don't get together much during the week.  It's good, we're in the final, so if you can get into the final that's what you want to be like, I suppose in terms of form lines up and down, we started well against McCool with a good enough result, you know. Went to Bally Shannon, we were probably in control for the first 35-40 minutes of that game, they just go up and got two goals in two minutes, like so, you know yourself when you're behind Bally Shannon then, they're our team to break down and it kind of suited them then and we picked up results along the way, we had a couple of tough balls that done low, we'd have mad game at our draw in between and then probably had a good control performance last week against McCool. And that game against McCool, would that be fair to say maybe your best performance of the season particularly in the first half because you were very good and very controlled? That's the one, that's what we spoke about against McCool, we spoke about young team, we watched the game against Glen Swally, it was kind of a mad game, they were up and down and it could have went anyway all through but we spoke about getting a foothold in the game and maybe getting a better control then and that's just the way the game panned out, keep the goals out and we knew we'd be in a good shot. Well he's running with the shot now, getting your hands on the Dr Maguire cup and he's won it back in 2018 deal and then he's lost out in that trilogy against Neave Connell, at that period he's had a very very talented group and some might say maybe that good or team underachieved given how good you were, how important does it now that you sort of put that to bed and you step up the next day and what level of performance is it going to take? I wouldn't say we underachieved that team as such, we won Ulster. Have you been following on from that people thought that this might have been more to come? We get the final following year, we get the trilogy against Glentys and we kind of deflated us away but then kind of probably spurned them on, they got a lot of momentum from that and they kind of pushed on the next couple of years where we probably fell flat from it like you know but lost a lot of players, a lot of players were tired so that's a different team now like you know. How many of the team that won Ulster is still involved? I was playing myself, Eamon, Dara, Gary, Orn. Orn McNeillus, Neil Freel, 678, a couple of James Boyle, Peter, Shane Ferry, they're all featuring regularly, they're all featuring again this year now but still it's probably half a team like you know. What level of performances are going to take them the next day? Do you have to up from where you have peaked so far this season do you think? We know what's ahead of us, we all know we need to play the perfect game more or less and we know what Glentys is going to bring. Discipline is going to be key against Glentys, they're going to suck you in, they're going to antagonise you in a way when you're down and stuff and coming in late and we kind of have to make sure we don't lose our discipline when that happens. You guys will be seeing probably these underdogs for this given the fact that... Oh definitely, we are underdogs, you don't mind that do you? No, we're happy enough but I know a final that's on the day, as I said we're going to nearly have to play the perfect game. Well that's the name, thanks for talking to us and we wish you the very best luck in the final.