 It's December. Christmas time. I thought we'd talk about some of the features that are coming in 2018. And I'll try and describe it to you in two minutes. But you can ask the questions. OK. I want to talk about the WebLocks API. Go. Is that like WarLocks? No. So it's like, like mutex, locks, and stuff. Yes. What? Correct. What is, what, how? Right. OK. So the idea is, in a page or in a worker, you would say, I want a lock named the, and you can give it a name, any name you want. It's just a string. OK. And then it will wait until nothing else has a lock of that name open. And then once it's open, you get a callback. And you'd usually use an async function here because it's expected to return a promise. And you like, you know, return the promise, resolve the promise, like return from the async function. Once you have done the work that you are wanting to lock for. OK. And so that lock is shared across the origin, I would presume? Yes. The whole origin. Yeah. OK. So I mean, we have locks on shared error buffers, right? We have, oh, atomic. The atomic things, which can wait and lock, wait, you can build a lock yourself. Yes. But you cannot wait on the main thread with an atomic. True. You can only wait in a worker, whereas with this, this is an asynchronous thing. So it can work on a page as well. And it also lets you do shared locks. Right? So. OK. Right. So in a shared mode, you can say, like, I want a lock on this, but I'm prepared to share with other shared things. OK. But then when a non-shared thing comes along for the same name, it has to wait for all of the shared things to finish. So this is, like, an exclusive lock. Like, read, write, new takes away. Lots of people can read, but only one person can write. Like, read and write stuff. And it means, like, you can kind of do some of this similar stuff with, like, local storage or with, like, you run into problems if a tab crashes or if it closes before it can. Ah, the canyons lock. Ah, the canyons lock. Whereas this will all happen because it's automatically. Because it's a browser level project. Yeah, OK. So you go. Yeah? Are you convinced? Is that signed off? Can we have it now? I'll think about it. OK. Fair enough. We have three seconds to go. Architecture. That's buildings. It's nothing to do with the web, mate. You got confused. Well, the thing is, that lots of other fields like enterprise engineering and gaming have, like, these architectural patterns when they build, like, really complex things. No, fields don't have architecture. You're thinking of cities.