Hello everyone, it is Crypto Grounds here. Welcome back to another Unity Ado Game Tutorial video. This is episode 6.2 and today we're going to be working on our smooth progress bars. Anyways, I am back with a green screen so I've kind of upgraded our little setup a bit and we're doing this all in a college dorm so it's working great. If you end up enjoying this video, make sure you leave a like as it really helps out the video for the YouTube algorithm. Subscribe to my channel if you enjoy this content and you want to see more. And turn on the bell if you want to get notified whenever I upload videos. Also just so you know, we are approaching 5000 subscribers soon so be sure to stay tuned for the 5000 subscriber special. Anyways, we've got that long crappy intro out of the way. Let's get started with the actual video. Alright, so if you don't know what a smooth progress bar is, it's basically just a little fancy thing I kind of just came up with. I'm not sure if there's like an actual term for it but basically you have a double progress bar here. So in this example we are inside of our click upgrade prefab. We have our progress bar that we have implemented two videos ago and we have another fill. So this is going to be the smooth one. I have changed the white one which was originally just the normal progress bar fill to smooth. And then we have our kind of grayed out one in the background and this is our actual progress bar. So basically what's going to happen is that this will fill up as normal and this one will kind of trail behind it as it depends on how fast it's filling up. So the faster it is, the kind of further back it'll be. It will give it a little smooth effect which is really satisfying to watch. So this video is completely optional but if you want to implement this to make your game look a little more pleasing to look at, this video is for you. Okay guys, I want to show you an example of the smooth progress bar in action in my game idle research. So we can see two or three examples here. We have our research bar at the top. We have a fill here and we have one at this flask. So in this example right here, you can see how it's going down. When it resets, it goes down very smoothly, right? So that white, if you can see that, that white part of the progress bar is the actual fill. And then the green is the smooth. So you can see it goes down quickly but it's smooth, right? It's the same thing with this right here, with the flask. You can see how it just resets very smoothly and it looks nice. So this is what we're going to be implementing today. The first thing we need to do is head to our upgrade script. Okay, so currently in this script, we have one image. We're going to add a second one and this will be our fill smooth. Let's head back to Unity. All right, so in the bottom here, right here, you'll see fill smooth. We're going to drag our fill smooth into here and we're going to replace this fill. I'm going to move my big old head right there. We're going to replace this one right here with our normal fill. So I'll show you this step on a generator upgrade or just another prefab. And we want to make sure you do this for all of the upgrade types. So, so far we've done it for click. Let's go on to generator and I'll show you how I've done this.  But basically right now this is our normal fill, right? This is going to become our smooth. So we're just going to rename that to smooth. And then we're going to copy and paste this image. Just rename it to products bar fill and just give it a little kind of a gray color. And we want to set this below the smooth. So I want to place that above it in the hierarchy and you'll see it looks something like this. And you want to do this for all upgrade types. And again, you want to assign the fill and then assign the smooth like that. I just realized that I accidentally messed up the hierarchy here, but make sure that fill is above smooth like this. All right, so we're going to be making a fill smooth method inside of our method script. And this is basically going to determine how we are going to calculate the smooth products bar because it's kind of an approximation. We're going to be adding and subtracting onto it based on what our actual value is. And we're going to multiply that by a speed so we can make it move faster or slower. All right, so this will be a public static void method and we're going to call it fill smooth. It's going to take into double. So we need to have a reference to this one because this will be our smooth value. And we're going to be changing this. So we need to take a reference of it and and for our second parameter, it's going to be double actual value. So this will be our actual fill and we need to take a reference of this as well because we're going to be doing some little modifications to this value. And also we want to change the speed. So you can this is optional. If you want to implement this or not, I'm going to I'm just going to do it anyways, but this will be a float speed value and I'm going to make this a default parameter. I'm going to set it to 10. This is the speed I use for auto research. All right, so there's going to be two different things we're going to be doing. We're going to be either subtracting the smooth value or adding onto it. We subtract when the actual value is less than smooth. And when the smooth is greater than actual, we're going to add to it. So we're going to be checking for a few things. For one, if the smooth value is greater than the actual value, we're going to subtract it because we want to go towards the actual value of the fill. And again, when I say actual value, I'm talking about the progress bar, like the actual value of the progress bar. And smooth is just a value we're going to adjust based on actual value. And so if our smooth value is less than actual value, it needs to catch up and it's going to we're going to add to it as it catches up to the actual value. So let's just do this for an example. So let's just have no if statements whatsoever. Let's just let's just write some stuff down. So for a smooth value, we're going to add onto it for an example, right? We're going to add onto it based on the gap between smooth and actual value. So we're going to subtract our smooth value by our actual value. And basically what we're doing here is we are adding on to smooth value, whatever the gap between smooth and actual is. Now this is where speed comes into place. So if we were to divide this number by let's say 100, it's going to be a lot slower because we are dividing the gap by 100. So therefore it's going to increase a lot less if that makes sense. While we divide by two, the smooth progress bar is going to catch up much faster because our gap divided by two, we're basically let's just go to paint, for example. All right. So let's say this is our progress bar. So this is the smooth right here. This is the smooth, the dark green. And this is the actual. So it's just going to be a. All right. So the gap is going to be right here. This is going to be the gap. And this is actual minus smooth. I accidentally messed up the math in the script. By the way, I'll fix that. But this is a minus smooth. Okay. And basically when we add to smooth when we're doing plus equals, we're adding this gap. To smooth is doing is basically moving the smooth all the way back to here. So we're basically just setting smooth to a. So if we were to have no division here, smooth is always going to be right here at actual. However, if we want to have that smooth effect, that's what we divide. If we were to divide by 10, then we're going to take this gap divide by 10. And that's probably going to be something like around here, a little less probably, we're going to be incrementing a lot less. And we're going to have that smooth effect. So the higher this number is, the more behind this will be from the actual mark right here. And the slower it's going to be. However, the lower this number is, the more precise it's going to be and the less smooth it's going to be. It's going to be as close to this actual as possible. I hope that makes sense. Just know that if you want a smoother effect, bump up this number. If you want a less smoother experience, then reduce this number. Okay, so back to script. And again, I want to subtract the actual value by smooth. And we're going to divide this by our speed, which has a default parameter of 10. So if we call this method and don't throw in any speed arguments, we're going to have a speed of 10. So we're going to be dividing all this by 10. And we want to add this is going to divide it even more because because this is going to go really fast. However, if we want to add this value per seconds, we're going to do time dot delta time and this will make it look a lot better. All right, so now if we were subtracting, we're going to do this exact same thing, except the only difference is that we're going to be subtracting the smooth by the actual value. And the reason why is because when we are subtracting and I close paint, we're basically going the opposite direction. So we want to calculate the gap by calculating how far ahead is smooth than actual so smooth is going to be greater than actual. And we want a positive value and we're going to subtract it by this. So now we need to actually check for this kind of stuff. So for the adding, we're going to check to see if our actual value is greater than our smooth value. And we want to check if it's equal as well just because we want the smooth value to go to actual. Otherwise, we're going to check to see if the smooth value is less than actual value. All right, so we're just going to leave it at this for now. We're most likely going to have to come back to this because because I've optimized it a bit. All right, so in order to actually use this fill smooth, we're going to head to our upgrades manager. And what we're going to do is head to our upgrade fill manager. It's our local method under update. And we're going to do stuff related to our fill. So let's adjust the smooth fill. So our fill smooth is going to be equal to methods dot fill. And we are going to take in a value. This will be our soon to be smooth and our upgrade cost. So this is the exact same as the actual fill, except we're going to be using another variable, which we will create in a second. And don't forget the dot fill variable. So we are calling. So we are changing the fill amount of this image fill smooth. So let's create this smooth variable. Let's go back to our upgrade script. And I'm going to create a float called smooth value. And now let's go all the way back to upgrades manager. And we're going to change our smooth here to to upgrade handlers at index index dot upgrades at index I dot smooth value. So this is the variable we just created. Now we actually need to set this variable because it's not going to do anything. This is just going to be a zero because smooth value is zero. So to do that, we're going to call methods dot fill smooth. And we're going to pass in a reference to our smooth value and a reference to our actual value. And this will be this fill amount. Also my mistake, but this smooth value actually needs to be a double because we're passing as a reference. We can't cast it. So make sure the smooth value is a double. All right. So we have another issue. We're trying to pass in a float as a reference, but it must be a double. So let's just head back to our methods and change this actual value to a float. And also another issue is that I forgot we cannot pass in an object variable as a reference. So we got to get rid of this ref term for the float and go do the same thing in our upgrade in our method script. So get rid of that ref for the actual value and we should be safe. All right. So let's give it a try. And as you can see, it is not working properly. So that is not a good sign. All right. So I've got it working. I've made a few mistakes, but let's just show you an action first before I actually fix it. See how it looks nice. Beautiful. So it works. And let's only show you before we actually get to the solution. I'm going to show you what happens when you adjust the speed. So right now it's at 10. It's pretty fast. But let's just go to here and actually let me get rid of some of this stuff. I was just kind of just playing around. Let's see. Okay. So I forgot to mention. I added the plus zero one because it's really, really slow. If we were to use the normal time delta time. So I multiply this by 0.1 or just divide the delta time by 10. And that made it much faster. So let's change the speed. Let's make this 100. I'll show you what this looks like. All right. So you can see it's much smoother, right? So let's just buy something you could see it's much smoother when it's at 100. So you may like it. You may not, but you could see previously it was 10. It was much more sensitive. And these are much slower, but it's a lot smoother. Cool. So they all seem to work. Perfect. Let me show you what I did wrong. So this is what the final code looks like. If you want to just leave it like that. This is what it looks like. It looks just fine. However, if we were to head to our upgrade manager, what I was doing wrong is I was actually using the fill method and throwing in the smooth value and divide and that divides it by the upgrade cost. So that's obviously not going to work. And I just completely forgot that our smooth value is basically it's going to be around the fill amount. So we don't even need to use this fill method here. So basically I just set this fill amount to the smooth value and I cast it as a float. So it looks like that. So here's all this code here. And let me show you the upgrades real quick. So this is what we have here and our methods. This is our fill smooth method. Anyways, guys, this is it for this video. If you enjoyed it and it was helpful, make sure you leave like as it really helps with the videos and subscribe to my channel if you want to see more content like this. Turn on the bell if you want to be notified for future videos and live streams. Check the Patreon down below. If you really want to support my channel and if you want to become a beta tester and all right. So I will see you guys in episode 7.0, which will be by Max. So we're finally starting to get some more quality of life in. And that should be an interesting video. So I'll see you guys there. Thank you very much and I hope you all have a great day or night. Peace.


So, to our next talk, imagine a world where information is spread across the whole globe, even to far reaches. And that's for free. There's a company that does this. It's called OuterNet. They do it through satellites. Unfortunately, part of their distribution channel is closed source. So, Daniela Staves, reverse-engineered the system, the signal, the protocol, and the receiver. Please welcome, with the anniversary edition applause, Daniela Staves. Is it working? Yeah. So thank you very much for the introduction. I would also like to thank the organizers, and let's go. The first of all, a brief introduction about myself, because it's the first time I speak into this conference. So I come from mathematics. I'm finishing my PhD. It's pure mathematics. It doesn't have anything to do with OuterNet or radio stuff. But I also have a background in computer science, and since 2.5 years ago, I took amateur radio as a hobby, and that's my Spanish call sign for anyone into amateur radio. And I also have a UK call sign, because I've been living in the UK for a while. So this is related to the talk. In my amateur radio activities, I started to decode some satellites which are orbiting low Earth, and they transmit into amateur frequencies. So what's the deal behind this? In amateur radio, encryption is forbidden. This is just mostly because of security measures, and that's part of the community also, because it's useful for amateur operators to just listen across the band and listening to whoever speaking, having, well, not so private conversations. But it's common to go and listen, listen, listen, and decode whatever you want. So that's kind of the amateur radio philosophy. And there are these small satellites, most of them are launched by universities or educational projects. They transmit some data, telemetry mostly, and the thing is that, well, these specifications for how to decode the telemetry, many times they release incomplete specifications. So you have to do some work in order to get a working decoder. I have been doing these for like two years ago, and that gave me some experience when I started working with Autonet. So enough of the introduction. Let's first go with what is all about Autonet. Essentially, you have a geostationary satellite, so it's fixed in one part of the sky as you look at it from Earth, and that's transmitting files from the Internet. I think Wikipedia files or weather information or miscellaneous information, small files, because the bandwidth is not so much. So then you have this signal and, well, you have this decoder from the Autonet, but these specifications are not open. So we want to construct a fully working decoder, and I'm going to explain how it works in two parts. First we have our RF signal, and we're going to turn that into bits or more precisely frames. And then what do we do with these frames? We want to turn those into files. And after that, some miscellaneous. Okay, so what is Autonet? It's a startup company, and its goal is, well, there are many places in the world where it's not so easy to get Internet access. And even if you could have a downlink-only access to some Internet content, that would be interesting. So picture yourself in the middle of Africa. It's impossible to get a proper Internet connection. The best thing you can achieve is satellite, but that's very expensive. What if you could just put a downlink-only satellite receiver and start getting information from Wikipedia, news, weather content, and so on? So that's the goal of this company, which is called Autonet. And they started broadcasting using digital television satellites, so you could use the same equipment that you would use in Europe, for instance, to receive digital TV from geostationary satellites. Indeed, you had a sector box. And this works because in DVBS or DVBS2, usually you embed digital video, MPG, or whatever, but you can embed all sorts of content, so they embedded files into that. But the problem with this scheme is that these satellites use spot beams, which cover only a region. For instance, you could have Astra satellite, and the beam only covers parts of Europe. You have satellites broadcasting to the Middle East, but you need, let's say, 10 or 20 satellites like these with their beams covering all the world if you want to have worldwide access. So that was very difficult for them to achieve. It's not impossible, and they switched it to L-Band broadcast. The L-Band is around 1.5 GHz, the same as GPS, more or less. And they now broadcast exclusively through L-Band. And they do it through three E-MOSAT satellites. This is a really large satellite company, which also broadcasts differential GPS information, information for air traffic, and so on. So they have these satellites in orbit. And it's just a matter of money to go to E-MOSAT and say, well, I want a really small channel on your satellite to broadcast my data. So that's what they did, and they have three satellites. One covers the Americas, the other one covers Europe and Africa, and the other one covers Asia and the Pacific. So this is worldwide coverage, except near the poles, where, of course, the geostationary satellites, which are on the equator, are almost out of view, but almost worldwide coverage. What do you need to receive out on it? Let's first go with hardware. You need an L-Band antenna. So typically you would use a patch antenna. This is like a square this big. You can also make it slightly smaller, but picture a flat square like this size. And that works fine. But if you have a dish, like a satellite TV dish, it's one meter diameter or 60 centimeters diameter. You can use that that will give you a much, much better signal. There are now people using a dish, and it's absolutely fantastic. You need an LNA that's a preamplifier. So unless your radio receiver is just next to your antenna, you need some sort of amplification into the signal.  For the receiver, you can use any SDR receiver you want. But the software from AutoNet only supports these really popular RTL SDR dongles. I think many of you in the audience have known about these RTL SDR dongles. They're really popular on chip. And of course, you could run the software in any computer you like, but the software from AutoNet is intended to work on single board armed computers such as the chip, which is $5 or so, I think, or the Raspberry Pi 3. So the idea is that you have a self-contained kit where you have the software running on a dedicated small computer, and then it does all you want. So it gets the files from the satellite, and then it acts as a Wi-Fi hotspot. You can log in to the Wi-Fi hotspot and copy the files to your devices or whatever you want. And AutoNet sells these items as a kit from the web page, or you can go anywhere online and buy them because we're really inexpensive stuff. For the software, there is this RXOS. It's really a Linux image. You put it on your flash card, on your armed computer, and then it does all the decoding. And as I said, you can log in via Wi-Fi hotspot and get your files and whatever. The most of the software in RXOS is open source. The only problem is that the key parts of the receiver, the most important parts that you need to get the files are closed source and distributed only as a binary. Actually there is kind of an issue because this binary links some GPL libraries, the ones that had to do with the RTL-SDR at dongle. So these are GPL only, not LGPL. And well, I'm not a lawyer, but I think it's a possible GPL violation to link GPL libraries from closed source code. I told AutoNet about this, they don't seem to care. So anyway. And most important, the protocols, the modulation, and the format of the signal, so how everything works, it's secret, it's hidden behind this closed source receiver. So why did I decide to reverse engineer an AutoNet? Well first of all, that idea of spreading into the content just via broadcast from satellites is really nice, but I don't think that using a secret protocol and closed source software is a good idea for that. You should really use open standards or open information, whatever you want to call it. Also some amateur radio operators had started playing with AutoNet. It's really fun because, well, most real 1.2 GHz, it's 1.2, the nearest amateur band. So most 1.2 GHz equipment for amateur radio, it's expensive, it gets some money to get into that. But this is some very cheap way to start playing with microwaves, so amateur radio operators started with that. And as I said before, well, closed source and secret protocols are also very bad for amateur radio. So what did they have before starting? The receiver is like a black box where you have the binary running and the RF goes in and then magically you have files coming out of the other end. And you know this is figures from AutoNet that the bit rate of the signal is 2 Kbps, so that's not so much, but if you have running for the whole day and you're expected to leave it running like for many days, you get 20 megabytes of content per day. I also had access to this closed source software. It's free to download, but it's closed source. And I mostly looked at the AMD64 bit version of the software. It's an older version because now they've dropped support for Intel machines and now everything is only for ARM. So the closed source receiver has two parts, one is called SDR100, that's the SDR receiver which talks to the RTL-SDR dongle and gets the bits from the RF. And then those bits get sent into something called ONDD, that's a demo which is running and that's all the work of reconstructing the files and so on. And I also had access to some IQ recordings by my fellow amateur operator, Scotchaman, Kilo4KiloDeltaRomeo. So in fact, I don't have myself a receiver for AutoNet, I could set up one very easily but in these days it's much, much easier to go to some amateur operator who already has this equipment and tell it, well, can you give me an IQ recording I want to play with it and in a couple of days I had my IQ recordings and I could start working. So let's see how we get from RF to bits. When I look at the RF signal I do it with my favorite SDR receiver, this is Lindrad, it's not very popular but most of you have heard of SDRsharp or whatever. So this is the waterfall on the left hand side, I don't know if I have, yes, the mouse cursor. This is the AutoNet signal, these are stronger signals which are, I'm not sure, either DGPS or air traffic somewhat and here you can see some packet data. So this is the first you see, just the waterfall. And in the waterfall the only thing we can see, apart from signal strength, which is okay in this recording, is that it's 4.8 kHz wide and there's no feature, there's no pattern in the waterfall. So it just looks like a hump in the noise floor. It's something which is 4.8 kHz wide and just above the noise floor. So I like this quote from Phil Khan very much. It says that if you use a good enough modulation or protocol then there are really no features in the spectrum or in the waterfall. So what do we do? Well, we have some experience and satellite communications most of the time. They use PSK modulation, a single channel, no OFDM, that's for terrestrial. But we don't know if it's BPSK, QPSK, it could also be QAM. But we suspect that either BPSK or QPSK are the most likely candidates. So we use GNU radio for the signal processing, anyone here familiar with GNU radio? Well that's good, yeah. So if you're into DSP or signal processing it's really easy to get started with GNU radio. If not, you need to learn a bit but you can start playing without knowing too much of the signal processing. There are lots of examples and things you can do and things you can run, sorry. So here I open my recording with GNU radio. The first step is just to filter out the signal. So the filter signal is in red and not so much to talk about this. I also shift it to baseband, so I center my signal about a frequency of 0 Hz. Here you can see it, 0 kHz. So that's the usual procedure in signal processing.  Now we want to find the PSK order. So there's some standard way to do this, you take your signal, this is my filter signal. It comes in here and I multiply it by itself. So that's like raising the signal to the power 2. And what happens when I look at the spectrum, I get a DC spike. So there's a strong frequency component next to 0. And this means that the signal is BPSK. If the signal would be QPSK, I wouldn't get a DC spike for the power 2. I would have to go to compute in the fourth power, so that's multiplying the signal with itself four times in order to get a DC spike in the middle. And you can sort of go and do it for higher order, PSK for instance, 8 PSK, it's also popular. So there's a fairly simple mathematical reason why this works, but I don't want to go too much into it. If anyone's interested, please ask me later. We also want to know the board rate, so how many symbols per second. There's also standard way to do this analysis. It's called cyclostationary analysis. And this involves the following computation, which is much better described in this GNU radio flow graph. You take your signal and you multiply it with the conjugate of the delayed signal. It's not critical how many samples you're delaying your signal. One sample works okay. In this case, perhaps 10 samples would work as well or even better, but you must delay it a little bit. And then you look at the frequency components. So you get a DC frequency component, but that's not what we're interested into. We're interested into the next strong frequency component, and that happens at 4.2 kHz. So that tells me that's the symbol rate. The symbol rate is 4.2 kB. All right. Now that I know that I have a BPSK signal and it's 4.2 kB, I can do the BPSK demodulation. This is fairly standard. There's a really nice GNU radio tutorial about how to do this. If anyone's starting with GNU radio after doing two or three very basic things, I recommend you should go and do this tutorial. So again, really standard for BPSK demodulation. You have an AGC, just to maintain a constant signal level, which makes signal processing work best. Then you have a clock recovery with the polyphase clock recovery algorithm. And this is where our 4.2 kB enters the picture. Here, samples per symbol works out to... Well, I have so many samples per second in my recording. I don't recall how many. I have 4.2 kB samples per... Kilo symbols per second in my signal. So that's the quotient. And then this recovers the clock and gets the symbols. And then a costas loop for frame frequency tuning. So the frequency is slightly out and it's always going to be. This constellation diagram wouldn't be still. It would rotate like this and you don't want that. So costas loop takes care of that. And this is the constellation diagram. For anyone which is not used to these diagrams, each dot is one of the symbols we're receiving. And they cluster around this point, which is, let's say, the bit one. And the point on the left, which is the bit zero. So if you have two clouds, which are really well separated, then your signal is very good. You draw a line in here, in the middle. And everything which is on the left is read as a zero. Everything on the right is a one. So the problem is when these two clouds start to merge and you have some bit errors. OK, so in this case, it's more or less good. We can proceed doing things. What happens with the coding? Well, I have 4.2 kilobots, but the bit rate is only about half. It's only two kilobits per second. That's a number taken from Autonet's web page. So we suspect that FEC is in use, an R equal one, half a code. What does that mean? That means that half of the bits are spent for error decoding. If you get some bit errors, there's no problem you're spending half of your bit stream in using a code which is able to resolve those bit errors. So once again, we have no idea about which forward error correction code is in use. We try first whatever is most popular, and this is really, really popular. It's used anywhere, the CCSDS convolutional code. It's a convolutional code and anywhere. Amateur satellites, long range space probes, Autonet as well. But there are some parameters. So this code has some variations. To find the proper parameters, there's a very nice tool from Balenciva. It's called Autofec. You just plug this block into your Gino radio flow graph, and it tries to use different parameters for the Viterbi decoder for FAC. And it tries on different parameters until it finds the combination, which makes the bit error rate go very, very low. So when the bit error rate goes low, then you know you have the correct parameters. So using that, I found that the CCSDS code used is a standard one, albeit with the two polynomials swapped. That's a technical detail. There are two polynomials which are used to obtain the code. So those are called usually Poly A and Poly B. First you go with Poly A, then you go with Poly B, Autonet does the opposite thing. You first use Poly B, and then you use Poly A. So you have to know that, otherwise you are not going to get anything from the stream. OK, so knowing that, we can use the stock Gino radio Viterbi decoder, and it goes like this. First, we have to swap every pair of symbols because of the Poly A and Poly B thing, which are swapped. Then this is the stock Gino radio decoder, which spits bytes. Each of them has eight valid bits or symbols. So this just takes each byte and outputs eight different bits, because we want to look at the bit stream to see if there's an important. And I have two Viterbi decoders running in parallel. One is running on the stream, and the other one is running on the delayed stream. Why? Because when you do Viterbi decoding, the symbols are going to be in pairs, so you want to process them in pairs. And you're looking at a symbol, and you don't know whether its pair is a symbol coming just before it or just after it. So you just try something in one branch of processing, and you try the other thing in the other branch of processing. And one of them is going to succeed, and the other one would fail completely, but you don't care. You know at some point in the chain. So I have two decoders output in the bit stream, and while it just looks garbage, it's completely random. So that means we needed a scrambler. That was expected, because if not, patterns from the data can be seen in the waterfall, and we had no patterns. So there's some scrambling, which takes our data, which is full of patterns, into something which looks random, and that's much better for radio transmission. But we have to reverse the process. OK, so now what do you do? Again, you try the most popular scramblers, you know. But in this case, none of which I know did work. What can I do? Let's recall I have the working binary for the receiver, so I can look at the assembler code. And this is the AMD64 bit. I don't know if it can be read fairly well. So this is the assembler code for the scrambler in the close source receiver. Well, you just take your assembler code, and you start in writing a C code translation. And of course, you simplify your C code, and it lets human readable. And then there's a really nice scrambler function. Anyone who's into these scramblers could go and understand what's going on. So this is nothing I had seen before, but actually it turns out it's really popular in the geostationary satellite industry. It's called IESS308. It's from standard from Intel sat. And actually, the standard, it's not open. They only give it to our partners or business partners or whatever. This is from a datasheet of whatever component. I find these randomly on the internet. But very nice description. So if anyone's into these scramblers, this piece in the middle with the shift register just looks like a multiplicative scrambler, and that's what it is. But the new thing in this scrambler is this counter. So this is just like a multiplicative scrambler, but with a counter. And once we have the code and how it works, we go implement it into a GNU radio block, plug it into the processing chain in there, and now we look at the data. And you can start seeing some patterns. So this must be read from left to right and from top to bottom. So you have some pieces of bits which are constant. You can see it there, right? So this looks fairly good. OK, and the next step is framing. We have to know where frames start and where they end and so on. So once again, you could look at the bit stream and start looking to see if you figure out any patterns which might indicate start of frame or something else. But that's, in this case, it's much easier. So I was looking at the SDR 100 binary. I can read the names of the functions in the assembler code. And several of those have the name HDLC in them. So HDLC is a framing protocol. It's used in amateur radio, packets radio, and many, many other things. So, well, we suspect HDLC framing. And there are tools in GNU radio to deframe HDLC. There's a stock deframer, but I prefer to use my own GR keys packet to deframe HDLC. So this is what we do. This is the output of the scrambler. We feed it into the HDLC deframer. And the nice thing about my own deframer is that you have this check FCS parameter. So HDLC uses CRC, 16-bit, to check the integrity of the frames. Many times when you're doing these sort of things, you want to skip the check and get frames even if they have some bit errors. So if you put it to false, it's handy. It's bit frames, whatever the CRC check might be. And a slight thing in here, sorry. When you're receiving BPSK, there's a phase ambiguity of 180 degrees. You don't know if you're looking at a 1 or a 0. So either you're looking at the good bit stream or the inverted bit stream. So you have to take, and again, you assume it's the good bit stream on one branch of the chain. You assume it's the inverted bit stream. So you inverted once more in the other branch. And only one branch is going to succeed at one time, but you don't care. So any one of these two will output frames at the end. And of course, recall that we had two Vterby decoder branches, so each of those has two deframers. So we are running 40 framers in parallel. And with this, I start to get frames. So now, what do we do with the frames? Well, the techniques, just to look at the hex dumps for the frames very carefully. And something much clever you can do. You have the OMDD binary. It gets frames from SDR 100 with a Unix socket. So you can feed frames into the Unix socket and see what happens. So you can figure stuff out that way. And well, the protocols that are used in AutoNet, they are custom or they look that I haven't seen anything like those. So I have named them as I liked. And this is a typical frame. Can anyone see any structure in here, please? No? OK, this FFFF thing at the very beginning is really caught my attention. This looks like a broadcast Ethernet address. This is a broadcast Ethernet address. It makes very much sense. This is a broadcast network. So in fact, this is an Ethernet frame. You have the broadcast destination, the source mic of whatever PC is running on AutoNet's ground station. And the Ethertype is custom. All the frames or the largest frames, which are most of the frames, are 276 bytes. And I think that's chosen because it takes approximately one second to transmit such a frame over the air with the modulation in use by AutoNet. So that's really handy. If you're setting up your antenna within one second, you know if you're getting frames or not. So let's look first at the level three protocol. It's called the AutoNet protocol, or OP. And since this is a broadcast network, its only role is to handle fragmentation. So in fact, it's a very convoluted way of handling fragmentation. But you have one byte, which indicates whether this is the last fragment or not. And in case you have a fragmented packet, you have one byte which indicates the number of fragments in the packet or the number of the last fragment. And you also have a byte which goes counting up from zero to the total number of fragments in your packet. So this only handles fragmentation. You have also a packet size in there, 16 bits. The liar for protocol, it's called LDP. And it's really similar to UDP. So you have some concept of ports that are used to identify different services within the network. I'm not sure. And it's really hard to tell with the data we have. If there is a concept of source port and destination port, I really don't care. So I have two ports. And the pair of two ports identifies the service. And I call those the A field and the B field. And you have packet size and a checksum. So very much like UDP. Apart from transferring files, something out on a DAS is to broadcast time packets. And these are used to set the receiver clock because it's intended to run without internet access. So you cannot use NTP. And these are very easy. They have here the ASCII code for, in this case, ODC2. That means alternate data casting too. It's the identification for the ground station in the America satellite. This comes from Scott's recording in the East Coast. You have something which I don't know what it is. But you have the Unix timestamp. So anytime the receiver gets a packet such as this, it reads the Unix timestamp and updates its clock. And there is some padding in the end because packets have to be at least 46 bytes. This is some limitation of the Ethernet physical protocol. Let's go to how files are broadcasted. So one file is broadcast at its time. This need not be so. The protocol allows for simultaneous broadcast. Every file gets split into 242 byte blocks. So you have many, many blocks. There's LDPC codes used to recover the file even if you fail to receive some of the blocks. So if you have holes, you can fill them using the LDPC code. And there are three types of packets. First comes a file announcement, which tells you all the details about the file. Then you have a bunch of file blocks, which are the contents of the file. Lastly, you have the effect blocks, which are the parity check bytes for the LDPC codes. And these are used to fill in blocks in case you missed some of the file blocks. So these file blocks and effect blocks are sent into lift. The file announcement packets contain an XML in ASCII with information about the file. And they are signed with an X509 certificate, Y, probably to prevent spoofing. So the autonet receiver has the certificate for autonet CA, and it checks that the file announcement is properly signed. And if not, I don't know what happens. Probably it discards the file. So the information you want in here. The ID, the size, the name of the file, a hash to check, and some information about the LDPC code in use for the file. And the block size is always 242. So file block packets. Very easy. You have in blue the file ID. In green, the block number, it goes counting from zero to whatever number. And then the block contents, 242 bytes. So that's how packets are transmitted. And once we have all of this information together, we can just go and code a Python implementation that gets the frames and recovers files. So we haven't been able to reverse engineering LDPC codes yet. That means you need to get all the blocks for the file.  But otherwise, you're fine. So this is the Python implementation. It prints out a lot of debugging information or curiosities. You may want to know the Mac of the Grand Station or whatever. But the nice thing is that here, where is it? There's a new file announcement for amazon.com Wikipedia page. And that's around 1803. And 20 minutes later, that's what it takes to transmit that Wikipedia page. You get all your file blocks, and these manage to recover the file and save it onto your hard drive. So what do we have now? Well, there's lots of documentation, everything I've talked about here, and a little bit more. In my blog, there's the guinea radio receiver. You can output frames in real time with UDP, or you can do a kiss recording. And then you have the Python code, which takes either real time frames from the UDP socket or the kiss file recording and gets the files from those. So what about LDPC decoding? We've done some progress, not so much. There's some track of the progress on GitHub. If anyone's interested, come talk with me. Currently, I don't have much motivation to go into the binary code on reverse engineering, but we might be able to do something. So some miscellaneous fun stuff. Well, it's Adelaide modern. So the X509 certificates, they use a CN. These addresses, odc2.houtanet.is for USA, odc3 is for Europe. So what's in there? You can ping that machine. It pings. You can go by HTTP. Why not? And now the HTTP port, it's blocked. So they've noticed. But before I swear, I got the login page of the satellite modem they use on the ground station to upload the data to the satellite. So huge security flow. Of course, I didn't get past that. It was open surely for weeks, perhaps even for more than a month. Huge security flow. What I'm interested is what's the model of the modem. It's an M7 modem. And now you go Google it. And there's lots of documentation and some pictures for you modem fans. This is the data sheet from the modem. I've marked in yellow what is used in Outanet. Let's see if I can zoom in here, yes. So yeah, probably not a very good idea to do it like this. So this is for the FAC, which they use Biterbi Modulation and so on. As you can see, only the most basic options of the modem are in use. They could have used QAM, and there are very nice LDPC codes, probably much harder to reverse engineer it, and much better performance that they could have used instead of the really simple CCSDS or Biterbi code. What else? Well, you have the IPs for the ground stations. So you can geolocate them, use any online tool, maybe you want to know where the ground stations are. So the Americas is in Toronto. The Europe Africa is in Amsterdam. I don't know if there's anyone from Amsterdam in this room. It would be, yes. Yes, so it would be very, very nice if you can listen on the uplink signal. I don't know the frequency, but maybe you can search or maybe you can manage to do it. So listen on the uplink signal and see if you can just receive the uplink signal. The format is the same. The satellite is like a bent pipe transponder. Whatever goes up goes down. So if you're in Amsterdam or anywhere near all the ground stations, see if you can receive the uplink. And another thing you can do if you can receive the uplink is go and do some radio direction finding. Maybe you can find the ground station. Probably it has very, very large satellite dishes. So actually, Asia Pacific, it's in some small village in New Zealand. What else? Finally, the data throughput. So 20 megabytes of content per day, that's what OuterNet promises. Is this true? Well, let's run the numbers. So we have files which are sent in 242 bytes per block. They feed inside Ethernet frames, which are 272 bytes each. So that's 12% overhead for headers. I've seen Ethernet headers, OP, and LDP headers. Then most of the files use LDPC codes as well. The rate is around 0.83. So this is a 20% overhead on top of the 12% overhead. That works out to a total overhead of 30%. And the bit rate is only 2.1 kilobits per second. And that's at most you would have to factor in the bit stuffing done by HDLC. So when you work out how many information per day you have, it's only 15 megabytes per day. With the convention that one megabyte is 124 kilobytes and so on, if you use the 1,000 convention, you would get, I don't know, 60 megabit. But nothing near the 20 megabit we were promised. So thank you very much. Thank you, Danelle. Do we have questions? For questions, please use the microphones provided over here, here, and here, and here. 1 to 4. And we also have a signal angel. Do we have questions from the internet? Yes, we have. Actually, the scrambler, is it basically encryption, or is it for another RF purpose? You mean like this whole reverse engineering work? So most of the techniques are useful for many other stuff in RF, VRF processing. Most of it, it's standard in amateur satellites, other commercial satellite communication. So I'm not sure if that was the question. The question was, you build a descrambler. So why is the signal scrambled at all? Ah, why is the signal scrambled at all? So it happens like this. If you have data most of the time, the data is going to have some pattern in it. For instance, in here, every time we have the Ethernet header, we have this whole bunch of FFF data, which is the broadcast MAC. So any time you have patterns in your bit stream, if you modulate with any sort of modulation, be it BPSK or anything else, that means some pattern in the frequency domain. So that's not very good from the performance point of view of RF engineering. You get less performance with respect to signal to noise performance, also interference to other channels. So when you want to transmit some digital data on RF, you want that your data looks completely random. And what you do is you use some simpler scramble function, which takes your data and outputs something which is easily recoverable, but looks random enough so that you don't get any patterns in your RF spectrum. Thank you. Question for microphone 1. Hi, I understand the overhead for the forward error correction, but why do they use 14 bytes for the Ethernet header? Any idea? Well, the thing is that if you go back to the documentation about the satellite modem, where is it? Probably here. Yeah, here. So on the top, it supports several different input formats. So you're going to have a PC or PC Lite machine, which is running all the broadcast software in the alternate ground station. And then you plug that into the satellite modem. And of course, they have to talk to each other. So they have to know a common protocol that should be simple enough for them to implement. And Ethernet is OK. It's very easy to wire it up via Ethernet. Why do the Ethernet headers go over the air? So this is intended in the commercial application, as far as I understand, for you to have a real Ethernet network. But over satellite, where you can have many different stations and it acts just like an Ethernet bridge. So that's why. Thank you. Microphone number two, please. Hi. Did you see any packets with the destination, which is not the broadcast destination, like Unicast packets? I think I did. So I can go back to my recordings by Scott. And do you have dumps of these messages somewhere sort? Not in my head, but yes, in my computer. So in my computer, I have all the files I've used. I think I saw something which was not broadcast, or at least, which was not like this scheme where you have your custom method type and you fit your alternate packet inside. So maybe ARP or something else, which was probably not intended to be broadcast over there. So yeah, I saw some of that. I'm not sure from the top of my head what it was. I can look it afterwards. So yes, they happen sometimes, unintended broadcasts. Thanks. And I think we have a question from the internet. Thank you. First, I have a comment. The four bytes in front of the Unix timestamp, is it possible that this might be a 64-bit timestamp? So that was not a question, just a comment from the internet. The question is, there is no user-based uplink. So what is broadcasted? Who is deciding what is broadcasted? OK, so the thing goes more or less like this. I'm not really sure, but at least this is what they say. And in fact, there are some people which are interesting in monitoring what is being broadcasted, because there's not like a public list of what goes out and when it goes out. So the idea is that most of the content regarding bandwidth is Wikipedia files. And this is from the most popular Wikipedia files. So this seems somewhat random, but Wikipedia files. They also broadcast some weather information, which is most usually for sailors sailing on the high seas. Some small files for amateur radio, APRS. Anyone heard of APRS? So some APRS, whatever goes with the Outnet tag in it, it goes sent back. And the users can also propose content to be broadcast. So files at most 10 kilobytes each, and they get screened before and moderated to prevent whatever malicious or whatever. So they moderate, and the process of moderation and so on is not open. So that's a very interesting question. What gets sent and why? Thank you. Another question from the internet? OK. So in this case, thank you, Daniel. Thanks for your time. Thank you for your interesting talk. And I hope we see each other again. Thank you very much indeed. Please, with an applause, Daniel S. Haves.


So, I don't think you should mess with treatment on me. More than his spot? Yeah. That was good. Is there anything else to set up? There's fine. And I can return that capture card? Yeah. What's up, Paula Wall? Ron, second again!  That's my channel. Found you. What's up, peeps? What's up, peeps and re-peeps? I'm glad to see all of your beautiful faces today. So, you guys want to see something? Well, let's just wait until we get to you. Congrats, Janine! Two days in a row. Can y'all hear okay? No, quiz yes. Oh! Diane sent us a new cable for our mic. It's up there. It's all of this cable-ness. And that's like the shortest we can get. It's like a 30-foot cable. Yes. So, can you guys hear me okay? And also, Jeff, okay? Can you guys hear me? Testing, testing. Testies, testies. Peeps. Everybody's want to know if you're pieced up. Well, how this is going to look. I don't know if I want to use that coral. How many people are watching? We get 100 people. I will let you know about my piece I did yesterday. How does that sound? Let me go get a sippy-sip. I'll be right back. I'll take that one for our out and then that one for you to go. So, take out the roll for me? Yeah. All right, y'all. Everybody wants to know how your four turned out to be. 99 people in here, all of them want to know. If it's set, if it didn't, did it did? Did it not? Well, it's funny because it's like, I wonder if Mastercast is like, heard about this already. I talked to Erin today. Oh, that reminds me. All right, y'all. I've had a lot of people ask about Mastercast and Ultracast. One is the super long hour and a half working time resin. It's two to one. And the other one is the Mastercast, which is the fast setting resin that I use with my geodes. And so, since people have requested it, I'm thinking about putting together a bulk order. So, if you're interested in doing that, check out their website. I don't have a link for it because I'm a slacker. And let me know if you're interested in what quantity you'd be interested in so I can see about getting a bulk order discount. So, shoot me an email, throwingartistalled.com. There's a D in the way right now, but, you know, you know what it is. The D is always in the way, isn't it, ladies? That's a decent one. My pleasure, Jay. Libby, the running one was the Ultracast. Anyways, shoot me an email and I'll see what I can do. Also, if you are in another country and you're interested, also shoot me an email and I'll see what I can do about that, too. What's up, Lisa Wyatt? What are you thinking, Lisa Mason? Country. Lisa, I'm trying to sell all of the artist's new products. What products are you talking about? I have not used Stardust, my dad. Give it up, Jeff. Tell us.  She's the only person I know that comes from vacation for eight days in the sun and sun. If you find the sun, there was sun. And not be tan. Partial sunburn. You got some tan. A little bit. It's cute. No? It's cute. What's up, Tia? So, here it is. Look how amazing that looks. You said a lot, it sets. Well, the extra, the two-part one was... It ended up being extra hardener rather than extra resin. So, it set up. Also, it did not smoke and catch on fire. Also, also, it gapped a little bit up here. So, it's just going to take a flood coat. Hopefully a flood coat will fix that. I don't see why not. But this is what I was going to do. If somebody's interested, as is. I'll sell this. I'll sell this at 400 bucks. As is, plus shipping. If you want a flood coat over it, you'll have to wait a couple days. And I will sell it for $5.75. Okay. The brilliant gold. You're talking about the paste. It's bright gold. And if you're talking about the powder, I'll have to look that up. Elizabeth, I did not ship... Are you talking about if I ship paintings to Australia or do I ship paint to Australia? Because all of my paint comes from Australia. Oh, Ellen, the paste is bright gold. Not brilliant gold. Lisa said I get moonburn. Well, I did too, also. Okay. The red was cherry by... Oh, is that what we're still talking about? Yeah. We had some lipstick in there. By Andrea? No, it was lipstick red, sorry. Lipstick, fuchsia, cherry, gold. Ellen, it is on the site. The black. What was that, black? That was Midnight by Black Diamond. Ellen, it's on the site. It's under metallic pastes. And it might just be listed under metallic... She just said it was a crime. Yeah, all she's telling me... All she's telling me is the powders in the paste. It looks like it's like... I wish my mistakes would have been beautiful. Well... Janet, your 48 by 60 is going to be amazing. Make sure you prep that canvas very well. What's up, Sue? 48 by 60? Mm-hmm. Is that what you said working for it? It's your can, Tia. Yeah, I can turn it up. All right, my mistake on all of it. The red from last night was, in fact, ruby red paste by Color Obsession. Ruby red, that's right. I think these divots give it a little texture, like give it a little... I don't mind it. Actually, we do a lot of paintings, not just resin. But here lately, that seems to be the main, like, the majority. Well, this takes, what, 45 minutes? Painting takes, can take 45 days. I'm still working on a mural that I have to finish. And I have not finished because of this stuff. Send me an email and I will get in touch with Susan at Artists 2 and see what we can do about getting you stuff that is not part of what we sell on our website. Looks like I's in a party mask. It does look like a party mask. Like the nose would be here. All right, be careful. Thanks for all your help. Thanks, bud, bud. Drive safe. A party mask. Janet, I have so many Artists 2 colors on back order. I think there are 14. But I sent her a message today and she's... Her mom's in the hospital, so I can relate with my dad's situation. But it should all be coming within the next couple weeks. Crystal. Crystal, when did you send that email? Ladies go. I don't know what I think about really leaving with you. I was checking email till 3 this morning, doing orders. She did seem to do things about that, singing to her. Let's do stuff for my phone guys. I'm sorry? Let's do stuff. Kelly said that D looks awesome. What colors do you recommend for an ocean and a beach? Blue. Pink. Orange. I think Karen was asking for like specific colors. Karen, I'll send you an email or text. Ladies and gentlemen, good night. He's listening to Justin Timberlake radio. What's up, Organic Minute? When are you all going to pack? Well, I've been packing all day, thank you. When are you guys going to come and help me? It's 17th. Okay, Crystal, I'll double check that. No problem, Organic Minute. Michael says 70% on still. What's up, Lars? I hope you're feeling better. Oh yeah, Denise is the ocean master. Denise says if you're going to need a dedicated computer assistant soon. If not already. Lucy, you didn't miss anything? We're about to get started. What resin do you want to use? I just pulled this one out because we haven't used it in a while. Okay. Send you a link. Lucy, you didn't miss anything? Lisa Wyatt, I think it was like $12. No rush whenever you get a chance. Too bad you're not close there, Organic Minute. Mara Fusser said Jeff. Jeff. Bluette Momshell said nice shirt, Jeff. Gene Simmons' bodyguard got me VIP passes for my birthday last year. That's awesome. I'm sorry, you're still in the hospital, Lars. This is True Kelly. Priscilla said I'll be providing lodging if I come and help. We have a couch. That's about all I can do right now. It's comfy. You can play with Pujil. I'm excited. I'll help pack and move your entire studio for a free class. It's tempting. It's tempting. We haven't used this.  We used it one time. Really? Yeah, I have half an empty can down there. Remember I put the wrong lid on. I thought this was different, though. Maybe this one. It's acrylic. You don't want to read that, babe? You're just saying that this can be used to coat your acrylic. Acrylic pouring resin is designed specifically for acrylic pouring artists. Hi, Diane. We got the cord. Thank you very much. What's up? Art by me. I sent you an email, I believe. Hi, ideas. The pink champagne by LaRose, huh? I missed the RSC Rose gold. I will check it out because, as some of you know from yesterday's video, we are going to be the new stock list for, yes. LaRose. We're going to have to jack our prices up, guys. I'll show you guys the painting that he did last night. It's right behind me. Oh, it's right there. I can't really see it in there. All right. So, is this one-to-one? Keisha, I figured you would recognize this. Keisha. From all the drama, from Camden. This is one-to-one? Yes. I'll just do a one-to-one. Oh, Christina, worries. I did send you a package today. Keisha, your package went out. I'm not even exaggerating even though I'm an always-exaggerator. I've probably, well, that's what I said. I've probably sent out 50 packages today between paintings, mystery boxes, stick orders, and paint orders. I've been an order-filling machine. Machine? Who's been an order-filling machine? Gina, I did not see the new process by countertop epoxy. I'll check that out.  I just about scraped that into there. Not good. Thanks to you, Diane and Mike. My pleasure, Amy. It went out. Whereas Mother of Pearl, I've seen that. I haven't used it yet.  This is true. I'm sorry, I'm not getting into education still. What's up, Sandy? Measure twice, cut slash four once, right? What's up, Trudy? This resin is counterculture DIY. It looks like this. And it's apparently made for acrylic pouring and resin pouring artists. I'm glad you made it, Sandy. What's up, Anne? This is the stuff I need to coat that with. Anne, let me just show you guys. Sippy sippy. Y'all look at this amazing gift that we got in the mail today. It blows my mind that people... How perfect is that? Take the time out of their day and make us something. Then they send it to us. It's going to be above our door for our new place, courtesy of Anne. It's amazing. I love it. Amy said I believe it. I got an email from you at 2 a.m. Right? Don't you? I was on the hustle. Did you do the same thing I did and put the wrong cap on? I don't know. I meant to mark them. No, this is right because this is thicker. Thank you, Melissa. You guys are going to need a staff soon, right? Jeff might need a babysitter. What? Lisa, I'm not sure if it's just a finished acrylic pour and we're going to put that to the test right now. I don't know why it wouldn't work because all resins ultimately could be used to do a resin tinted pour. Why not? Can you tell them about Decocraft? Negative. Hey girl. That's from Abstract Boss. Huh. What do you use to hang your paintings like that? You can get these little like... These are just thumbtacks on the wall. Thanks for talking about the back of that piece. You can get painting hangings. Hangings. What are they called? Hangings. What are they called? Hangings. Hangings, thingsies. Yeah, you can get those at Michael. Isn't it cute? Ron, I anticipate selling the binder from Lores as well. I understand, Tia. Thank you for the thought. And Corpy. Hope I said our last name right. I think I got in trouble one time. Elizabeth, it would be amazing to meet you guys. Love the idea that we're going to meet people in October from across all the ponds. All the ponds? Across? Do you name your works of art? It depends on the work. We usually don't name the resin pours unless we put them in a show. The paintings, his paintings, always yes. I haven't tried... Good idea, Sandy. I haven't tried Lores Milton Gold, but I've seen it and it's gorgeous. Lisa, it did set up. This is the piece. It looks so good in person. Morning, Nina. I love those colors. I want to do that again. Sawtooth, that's right. What's up, Gail? They'll for a work. A.B., I just got your message. Somebody asked me if I could do some orange yesterday. I'm sorry. I've never really used orange, so I'm going to go ahead and use orange today. Orange and yellow. Not 100%. Why did you have to throw up that stir stick? Because we got a batch of stir sticks in that weren't made with the right material, so they were weaker, so they snap easily. Y'all are watching. So we threw it out. This is the thing. When you wipe it with alcohol, this particular acrylic doesn't... Alcohol breaks it down, and it was the wrong... A couple of sticks of my brother's made that my brother made for me. We got the right acrylic, and now they're all good. But we are using all of the fail sticks in the meantime. We don't want to sell them. What does the binder do? Basically, you mix the powders, the micas and things like that into the binder to make it smooth and not clumpy, and apparently you can use it to turn it into a paste. However, I'm not 100% clear on all the things that it does and why one would use it, but I still haven't watched Susanna Dain's video on it that reviews all the stuff that it does do, so head on over there and check our channel. It should tell you. This yellow is thick. Give me some of that yellow. AB, should be an email. I can definitely give you a discount code for a bull quarter. Dain Hart says, I love when Jeff just pauses with resin above the canvas. You can see the wheels in his mind turning. That's true. I'm Laura Taylor. He just said that orange eaves and believes inspires me. That's not it. The orange is low-res, I believe. I love orange and navy. That's too close to my rival colors. Mina said, I'm having trouble doing a resin pour with black, red and white. Could you do one, please? You don't have to ask Jeff about that. He loves those colors. Black, white and red.  For like a half second, I thought, are you serial right now? And said, Jeff gave me the color scheme for that without even knowing it. Kelly said, you can use a binder to make custom color. Can't wait for Jeff to try that out. He loves making custom color. That's true. Without taking, Christine said I'm about to get paid for the first time for one of my paintings, and the first thing I'm going to do is say thank you. And secondly, which should have been firstly, congratulations. Your first art sale is something you never forget. Lisa Norris, you can tint resin with alcohol ink. However, I would advise against it because alcohol ink is not light fast and it will fade like within a year. The color will be not the same or disappeared altogether. What's up, Rodline? If you're shining, who do you love orange and blue in general? Kelly Grunty, you could pay the canvas red and use black and white color. That's true. That would look good. I think that there's so much just like same orange in here that... That's awesome. Anne, congrats on your sales. Look how cool this looks. Nina, request that you post your piece because it's just a sunburst. It makes me want to start first for some reason. Ron, can you post that piece you did in an ATV group? Great, Anne. Tita, I respect healthy rivalries and we're basically family. We're in the same state. The one that we mixed crappy was this one. We did it yesterday. Jeff mixed a two-to-one resin as if it were a one-to-one resin and turned out it said I'm just fine and it didn't smoke and catch like the house on fire, so that's cool. You're wondering, I'm listening to Stevie Wonder right now. Congrats, Sherry. Ron said Jeff, just walk away right now. Well, I would, but it's... As soon as it looks stunning as is. Lisa, unless they use specific color-safe things, there's additives, I think, and like coatings you can do, but like when people were doing the peach-redishes with the alcohol inks, they're gonna fade. Unless you do a whole bunch of like work to it, which I don't know exactly how it is, because as soon as they told me it's extra work, like double the work of making the peach, I was like, I don't know if I have the time to do alcohol inks like that. So I haven't tried it personally. I have all the stuff. There's a peach-redish right there, but I'm sure someone in a group can tell you the woes and the wows of... It's so gnarly. ...alcoholics. A new picture is going to be what's up. What's up, Tony? How have you been? Wow, being Park Life, huh? 16 hour days to stay the week. I did not, I forgot all about it right after I read that message. I did not send that out. So it's you, I know you're out of your place and doing stuff, so if you need me to do it still, I can do that when I get off of here. Or if you have time to do it, just let me know. Whichever is best for you. There's someone to know what sites you sell on other than Etsy. We don't really sell our paintings on any websites other than our social media and our...what's that thing? Look at that. All of the, like, deeper colors went away. That looks fun, though. Yeah, I don't think it's a thing. I think I just made that up. Y'all should do a blind pour some night. That's not a bad idea. Write that down. I thought about that one time, and I just, like, I don't understand, like, I guess one person would be... Or have, like, when someone else does your hands. Oh, yeah. Kelly Green says one from last night was my favorite paint ever. Lucy says you're doing two out of three Jeff basically pretty much always arts to music. I'm just really getting started on the line, but I'll figure it out when I get off of this bead. Two. Pretty. Add some red and call it Fireball. Another retro piece. Adjust the camera. It does look like a Fireball. It does. Looks like something on the, uh...   Blue eyed nonchal, you got this. It looks almost like a sunspot. It's a sunspot. It's bananas. Love that. I don't know how you do it, Jeff, but those colors are bananas. It's like orange banana. Sun flare. I like that. I like sun flare, too. Welcome back, Diane. That looks hot, hot, hot! Says Kathy. I think I'm ready to go. Rachel, we drenched the rags with, um... alcohol. So... sometimes we can just reuse them. And other times we do have to just throw them out. It all depends. Banana spots. Sherry said very different, Jeff. I think you killed the challenge. Call it solar flare. I think sun flare is a very nice, very appropriate. Have fun at your archery class, too. One day I want to do that. 91% alcohol is the life-saving disturb. Look at all that. D, if your screen is black, just... close it out and restart everything. Call it Tang. Pretty Tang. Oh, that's a great one. Hi, Linda. I sent your package out today, by the way. What's up, Jackie? That's the thing. You just got to pour a lot of resin, a lot of color, and just do just minimal... minimal stuff to it, and it turns out amazing. I got that email from you, Linda, and I did take out the, uh... Cory. Hi, Michelle. I don't know that anybody else has a black screen D. Maybe just close it out and restart it. Yeah, baby rags and whites will leave behind a little bit of a glimpse. That's true. Laura Taylor, maybe close it and come back in. Is anybody else buffering? Kathy Collins has been with us since, like, seven followers, I think. Hey, why are you doing this? I try, Linda. Oh, Ron says D, if you're buffering or video issues, press F5. Thank you very much, Chi. Michelle says that's gorgeous. How did the depth turn out on this one, Jeff? Um... I don't think he used that much clear as the base, so I'm not sure about the depth. I used it clear throughout the whole thing. I just did a clear base, like, the first dot, and then I just put clear, clear, like, as a... Mm-hmm. Looked like a pumpkin was shot. No worries, friends. I'm glad you're here. Jackie, uh, we are moving studios, where we have maxed out of space in this one, so we're gaining a couple square feet and moving down a couple floors. I'm losing space in my bathroom, and we're losing our amazing view. Well, we're cutting our view in half. However, it will be much better for the studio and to be productive, so... It's time. Let's go take a ride on this. Hi, Cassandra. Sammy, we usually don't cover the bare spots on the sides. We like to leave them so that you can see the story of the paint, and our clients, for the most part, really like the organic flow of the resin on the sides. Patty, Sunset Overwire need help doing mine. Thank you, Cassie. The stuff is already setting up. Shai says, hit like or let us know why not. Shai, I'll get you. Judy's hanging, I think, but Shai's here. Patty said use the banana mold. I think it's too set for the banana mold. Slash, I don't think you can... Where is the banana mold? I don't know. It should be somewhere near. I think it is basic. I'm going to show you guys that are just kind of tuning in how last night's pour turned out. Turns out, pretty nice. The only thing... Look at that gold just glowing out of parts of this piece. I will say that we're going to have to do a top coat because it gapped a little bit on this edge. But you know what? That's not too shabby for mixing the wrong parts of resin, you know? If you'd like, you can just send me an email with ones that you are your favorite, and we can discuss which ones are the best ones, if you'd like. All right, any minute? What happened to that guy? It was just too thin. Linda said, yesterday's pour is spectacular. I love it. Did I miss some challenge info? No, Rod. The challenge is still the Peacorn Challenge. Alicia, and pouring tonight. I have canvas right here. And it was requested last night that we do a pastel color pour. So I'm going to try to do that even though I'm not the best at pastels. Branded anyways. You got how bananas. Sure, I'm sure it's starting to set up. Yeah. Yeah, I hope it works better on your phone. Trudy, you do not have to use the same resin for a top coat as you did the base coat. However, I would recommend sanding it slightly with a 200, no 220 or 400 grit to create a tooth for the top coat to hold on to. What did we say the hashtag was A-T-D Peacorn or Peacorn? Yup. Did we have art at the end of it? Yeah. Also, we're going to post on the morning of the 30th in a group to put entries in the feed of a post that I'm going to put on there so that if someone does misuse the hashtag they won't be left out. Wondering, aren't the pinkies turned it up? Setting up. This is true, Kathy. I just made a big on this. Philly Phil says, why does it look like Fireball Cube? Yeah, Amy, I'm just going to post it and everybody that hasn't gotten it the right hashtag still has the opportunity to put it in there. Also, you can always send me an email. Just put some version of challenge in the subject line. That really set up. Already? I mean, it didn't tilt at all. I think I want to use that to put over the top of that one the one I just did. I have to waste more of that. What colors are you using? Those, but I'm not going to pour right on that. You already have it pulled out. You have to clean up after I'm done so you can use it, baby. Your turn. I don't like to breathe. No, not Joe Cheese. How about instead of right and left down I just draw with, just doodle.  I threw out one that was stuck together and broken. It was just a level one. You guys, you don't have to keep track of all the stir sticks, okay? He's going to make sure there's nothing we didn't intend to do. Because they're sweet. We appreciate it. What are the rules? Colors of Peacorn Contest again. Pecan? We have the reference photo posted in the ATD Poor People group. I don't have the reference photo with me, but it's there. If someone could post what our group name is, that would be immersing. This is a really small canvas for all these colors, but you know what? I don't even know where my Peacorn colors are. These are the colors, y'all. I'm just going to use Fama Wood. We haven't used Fama Wood in a while. I think I just broke everything. Looks like a very, like a dark plum, very dark, purple, magenta, bright green, and kind of a dark teal. It's not your part of the show yet. They're laid down. You guys remember when... Remember when what? You got this all, like... I didn't set any of that up. I just put my phone in there. How many ounces did you use? It was kind of perfect. You used two ounces? Whenever I say that, it's two to two. Two ounces, so probably... I guess that would be four. Seven. Seven ounces, two and two equals seven ounces. I don't go by that. I just go by... one. I haven't used this product in a long time. So, you guys remember on Snapchat when it was just... You can draw on it. That was pretty much the only thing you could do is just draw on your Snapchat. I would get bored. This is literally right before I met her. And these were my Snapchat back in the day. He's not bored anymore. Oh, here. Look, this is me when I was 19. That's my dog back when I was 19. Jeffrey George. Hold on. Look. Thank you, Lori. Careful. And my cats... My cats used to hate me so much. That was cash. Like, it would take me probably a good an hour and a half to do these. That's cash. There's Moo Job. Play or pull. Look how cool he is. Oh, I never saw that one. B, that looks so good. You could be a digital artist and design me more shirts. Oh, y'all don't forget we have shirts available in the link below.  Oh, yeah, one last thing. You guys remember Squintz from Sandlot? He's a friend of mine. Ideas I think you can still draw. Just to let you know. For real. I know. It would, Jackie. Perfect t-shirt pictures, right? Christine said I would buy a shirt with those drawings. That is not Jeff's style. How many colors do I have? Okay, so Jeff's colors were color obsession, lemon drop, by the way, color obsession came out with their own bananas yellow just for us. The epoxy pigment is Artisou orange sunset. I do have this color in stock. And the other one is FW acrylic ink in the shade flame orange. Very appropriate. The colors I'm using. I'm married. Pearl X, duo green purple. X apple green. Pearl X, the train. Artisou lavender. I haven't used this yet and I'm super excited to see what it does. And color obsession, Bonaire blue. Because we fancy, huh? I cannot believe I'm putting six colors on a three color canvas.  Yellow. I would just pour them all in one big puddle and just do what you did with that peach one. That coral one. Just heat it up and like, tilt it or give it a good blow. You can't reach the button. I was about to say this resin smells an awful lot like alcohol. But, that would be good. How thin famo would resin is. I did say a good blow. Sherry the frag behind her. It turned out. Sure. It looks good. It's got a bunch of pits in it on the edges. Nothing that can't be fixed. Nothing that can't be fixed unless you like that.  Which I don't mind. I'll sell it as is or I'll put a flood coat over it and just add a couple more dollars to it. It looks so amazing in person. These colors are phenomenal together. Bananas. Pour is bananas. Watch the office. Am I alone? I know it's not on anymore. Which makes me sad. Ew, I think this color might be one of my new favorites. Thanks Sherry. Also on Friday I think we're going to do a fire sale. Yeah, we're going to have to do a fire sale. We're going to have to get rid of so much of this artwork. Like, we have the wall space kind of in this new place. But it's going to have to be for like done artwork for sale. A lot of our walls are concrete. I don't think we have a concrete drill bit or whatever it is. Is that right? The thing is the wall that we're going to be recording on we're going to have our own separate area for recording. And then we're going to have a real big wall behind us. So we'll have room for artwork there. And then we'll have the gallery wall. I don't know why this color makes me want gelato, but it does. It is. Make sure you can wear it. Thanks Tammy. Well, we're going to have lighting above our above our head the track lighting. And then Mars is sending us some lighting. And that will be a little bit more in back of us and softer. So hopefully that'll soften us all up. I think it'll be awesome. Oh, I just kind of saw ocean. What's that? Ocean? We still haven't busted out that run. We haven't. And I just packed it. We get the we can show you that on Saturday or Sunday the loft before move in. Tomorrow and do a live feed. I can get the key. We'll do an impromptu live feed. I can't tell you what time tomorrow because it depends on what time they can meet me and let me borrow the keys. It's a 12 by 36. Can't be enough this close. I have to tilt my head up so hard. We've been packing. I've been packing. She's been getting all the e-mail stuff done and shipping and all that ship out of the way. I'm not sure. It looks like we figured it out. Welcome. This may be one of my favorite colors. We're definitely going to open up that run at the new place. We're saving the DOM for we're going to save it for 100,000? It's going to be like a vintage bottle button. Maybe we'll save it for 50,000. Thanks Bethany. Thumbs up people. Thumbs up. Unless you guys keep sharing our videos with people on other social media. I'm telling him my son actually figured it out. But we're going to need the computer near us. We have to figure out a super long cord or hope that my laptop can handle it. Hope that the laptop can handle it and then after that hopefully the fiber will work just fine. Yeah, I still don't know how the internet is going to be down there so we will see. Y'all this famo would, I don't know if you've tried it but it's got a stench to it. It's that nice Let's see if that works. Melted plastic smell. What is it? The smell of famo would. It is a lot better. Thanks. I probably don't need to sit so close. I'm just not used to reading that small so far away. And my glasses I'm sure are just a tad dirty which I don't understand how. I don't even touch them. I don't know how this is going to work. Plays and gents. The green is pretty opaque. The yellow is pretty opaque. This teal purple duo was more opaque but it's not everything's opaque except for my favorite of the colors. Yellow. That's fun to leave it. Bye. See you guys later. I said bye. It is fun though. I wonder if it would just set like maybe it would move. Probably. Will you zoom in? For me. I have these little alcohol wide hoods. Look at that. Oh my god. I can't see. Sweet pea what's wrong? You can't see what? I would put just these two colors together. We think we. Obviously I'm not done but future. That yellow over that purple or lavender is I have plenty to work with.  That's upside down. It's not upside down. I did it because it's it's blowing out. This is dipping up. It's going to reroute your resin. See how it's going like this? I did it with mine. I just held it at an angle like that. Look how fun. Blue. Troll. Troll for Troll in the house. Thanks baby. Hi all. I'm busy eating tacos. Scrub it in.  I typically wouldn't either but it was requested. My daughter says it looks like one of those giant volleyball box. Doesn't it? I should have spoiled it. The blue over the orange looks amazing. Of the green and blue it shall be. It's definitely different. Wondering art says I'm making meatballs of watching you.  Three colors too many. What is the pink color or lavender? That is this color. What was the teal? That is this color. I don't think they can see either of those. It's crazy. It doesn't look like it would be that dark. This is the teal. That's why it's got purple in it. The lavender was lavender by Artisan. I'm not sure what to think about this one and I think I'm just going to leave it be. It's got some interesting things happening. I don't think anything I do to it at this point will make it better or you really don't want to do anything feel better Janet. It's risen so thin. I wouldn't recommend it to anybody that's very sensitive to smells. I think you can get it at like do we get ours at Home Depot or Lowe's? What? Our Famo Wood resin. Oh I think so. We got it just because someone asked if we had used it before and I hadn't so we purchased some for you. Alright Ocean. Have a good night. Thanks for stopping by. Am I saying that right Elisa? I never wore like at all and we sold a lot of them. Hi everyone. Just got home from my son's graduation from high school. So probably my voice. Sorry I missed the earlier for us to know what happened last night next day. Oh Anna I just I mixed the wrong ratio of resin and it's still set which was super surprising. I think we're closer. It's totally what I was going for. Well Benetton Peacorn P-C-O-R-N It's supposed to be a combination of peacock and unicorn. I thought it was that. However don't feel like Lori wants to know what that lime green is. I will still just hold it right in the center and you can they'll see it. I'll still search. Real nice. Got a target. There's so much paint on these. That's going to drip into the other one. Waste not want not. Waste all the wants not. Wants not and waste not. Say what now? Seven days. Look at them seven days. Some of my brother used to say when he was little you didn't see a bunch of Chevrolets Look at them seven days. Seven days? Seven days. No, Bentley not target. We're just quoting We're just quoting who wants to go fast. Step Brothers. Step Brothers. Oh yeah. It wasn't Talladega Nights. Step Brothers. It's Talladega Nights. I have an original post I'm sure I did it I thought I got rid of it Apparently I didn't Look at these posters. I will search all of the versions of how it's spelt Don't worry that you'll get left out I will find all the posts And tomorrow Nope, on the 30th I will post Um, a last call for people to post their, um, pieces under said post. Gotta be honest with you, I like this piece more than the actual painting I did. Well, it's blended so much, so much more. You almost said better. I blended more. I was never gonna say better. Very sensitive. Delicate flower. Let me swirl, swirl. The thing is, you have to touch the bottom of that. I did. You have to, like, drag it along the bottom for it to really swirl that. Whirl it, swirl that lavender and that teal together. I can do this. You can zoom out it. So... You want to see the painting from last night? Of course I do. Here you go. It looks good under those lights. Tilt it towards me? Look at that. See those edges? It gives it a little texture, but I really, I really like them. Hold on, let me zoom in on that.  You can see it there. Stop me. Let me zoom in. I see the party mask now. Yeah. I think it gives it a little texture. If anybody's interested in As Is, we'll sell it for 400 plus shipping. And if you want to have me do a flood code over it, I'll let it go for, what do we say? I said a number earlier and I think you made a noise, so we'll go to 625. I think that's the same number. No, I think I said 575. So now you're raising it? Yeah. Tire. Is that too much? You can't raise it at the end of the video from what you said at the first. Organic is on it. Yeah, if you want to do a flood code over it, I'll do it for 575 plus shipping. It looks amazing in person. Yes, Nicole? That's a cool bit. The cause is from resin. Yeah, I think that resin is really thin. And it is really thin. It tends to back off and it doesn't want to stick that well if it's not really heavy and flat. Sherry said you said 525 last night with a flood code. Organic said it is worth 625 though. Well, that's what I normally sell that size for. Deborah, send me a picture of what problems you're having with inks and we can see how to make it better. I see that too. See the face? Looking down. Deborah said has anyone figured out that chromarine is so cheap because you have to use twice as much so you don't get dimple? I'll be about ready to get back to... Kelly, that's exactly what I'm going to call this piece. Pink masquerade. Pink masquerade. I'll do a masquerade piece. Double up. I couldn't say the last word. I'm not allowed. Look at this. How do you even know these are even metallic? Oh, they're all metallic except for your face. Alright you guys, last call for questions because we got to go... Did you hit this one? Heat? You can see bubbles. How do you get the resin out of the molds? They pop right out. They pop right out. Been in a studio culling pigment. Add too much. Judy, you have every color ever made plus some that have not even been invented yet. You have some from the future, I think, Judy. Because Andrew Long says, I'm sure he's been asking many times, what's your guys' preferred method of monetary hugs, a.k.a. donations? Monetary hugs. Cha-ching hugs. Cha-ching hugs. We have a PayPal and a Venmo. You can also use Super Chat. We're not picky. Every dollar counts no matter where it comes from. We love it all. Thank you for even the thought. Also, thank you, Shai, because you're also right. What's up, Jo? Didn't see you there. Alright, you guys. Last call for questions because Moo just ran in here like, I know what that means. What's the deal with cell phones? You just said I was seeing last night for t-shirts for ATD and came up with beginning after dark. Then thought there was no way that that could have a good outcome. Right? Breaking and entering after dark or baking an egg after dark. Shai says, or means he has to feed. Mary Jane, we are doing a donor giveaway every month, so we'll be doing that on the 30th. In addition to all of the painting giveaways, like for the competitions and all that. Lars says, Nurse Ratchet came in for my sponge bath, so I say, goodnight. Nurse Ratchet. That's not for one fleur of the cuckoo's nest. Come on. Alright, you guys. I know Jeff's always doing it in the background. Alright, you guys, thank you so much for tuning in to what we're up to. If you're interested in any of this artwork, good as for sales, shoot me an email at thornartistled.com, two T's, two L's. Our PayPal is thornartistled.com as well. Our Venmo is at artistled.com. If you would like to send us a letter, a hug, or any products checking out with our address that supports you now, and I saw the Marshall Dallas, Texas, you can put my name, his name, or ATD Studios or any and all of that to get it to us. If you're interested in any of the paints that we use tonight, if it's Artisuit, then I have it listed on our website, www.artistled.com, two T's, two L's. If it's not listed there and it's not Artisuit, it will be listed down below in the description box. If you're interested in the merchandise, zoom in on that. We're gonna have to make a sign for the new one. Yeah. We do have t-shirts, stickers, et cetera, socks and stuff available. Check out Teespring in the description box below. We usually start at 8 p.m. Central Thumpa. I don't know what that is on Eastern because that is not part of my East Side vocabulary. Anyways, we just gotta go pee and I got work to do. We gotta pack and et cetera. So, till tomorrow. Bye. I said bye.


Welcome to the Everton News Daily. The case of Belgian players going on international duty and talking about their career has struck again. This time it's Amadou Onana, who has refused to rule out leaving Everton in the January transfer window. I must say though, he didn't say he wanted to leave either. I have to put that in there because that is a vital piece of information. He was asked about coming on international duty with different players and stuff and Amadou Onana said that his big focus at Everton is making the club safe, but he did like going to Belgium and playing with. It was phrased as higher level players. I don't know what your team mates would think like that, but there you go. Amadou Onana was asked about the possibility of leaving. He basically said he wouldn't rule it out, but he's not concentrating on that. He's concentrating on Everton at the moment, which is exactly the right thing what he should be saying. He wanted to stay for the season, so I don't envisage Everton selling him in January unless they got a bid that they deemed too high to turn down for him. So, to speaking, they could reinvest it. I don't know onana will at least see the season off for Everton. He is speaking, he was speaking rather ahead of Belgium's game against Austria. Juventus are tracking Andre Gomez apparently, that's according to Calcio Mercato. They targeted him for a January move that obviously they like the fact that he's out of contract next summer therefore would be a low cost to them to get him out of Everton. Obviously they've had issues with Paul Pog, burning his injuries and stuff, that is what the report said. They like the fact he's experienced, played at Barcelona, played in the Premier League and they see him as someone who can come in today midfield and give them something that they haven't got. This is all according to Calcio Mercato. So, it would be interesting to see whether Everton and Andre Gomez, I mean, for the player, it'd be a good move, wouldn't it? At his age, 29, 30, nearly, to move to Juve, big club in Serie A. He has obviously only got a few months left on a contract when that January transfer window opens. I think for Everton, if he could get a few million quid for him and get him off a wage bill, I think they'd be quite happy with that as well. Especially for a player that hasn't featured, I mean, last season he was unknown at Lale, of course. He's injured currently at the moment, working his way back to fitness, so Sean Dites hasn't even had them really available to him this season, so we'll see how that one pans out. Jarrett Brantwight is involved with the England under-21 side for the game against Serbia at the city ground. It's England under-21's first game on home soil since winning the Euros in the summer. They do face Serbia and Ukraine in the UEFA qualifying campaign at the moment. And don't forget England are playing Northern Ireland, the England under-21s are playing Northern Ireland at Godderson Park in the next international break. That's on the 21st of November. Kick-off for that one is £7.45, so you might get the opportunity to watch Jarrett Brantwight in an England shirt at Godderson Park, so I'm sure a lot of people will want to go and watch that one. And finally, former Everton Midfield player Isaac Price has reiterated that he made the correct decision to leave Godderson Park in the summer and moved to Belgium. He's been speaking while on international duty with Northern Ireland and Price recently scored a 90th minute winner for standard liais against Club Bruiser's Day 121 earlier this season.  He wasn't getting enough opportunity at Everton with the first team and therefore he made his decision that he wanted to move for first team football. He's getting that now at standard liais and he's very happy. He's played too and the lad has moved to get more games and further his career. And of course if 777 end up on an Everton, he'll be owned by the people who own Everton, so who drill out every turn to Godderson Park in the future for Isaac Price.


I'm looking forward to a new start. No baggies. We're finally putting the past behind us, and some memories are really special. Oh, that's so cute. Oh, that's one bag thrown away. When I did start hoarding all this stuff, I thought at one point I would want another baby. I know, but you're not having another baby, so... I just feel like you've got to be really, really 100% ready and committed for another baby. Do you like walking in the future? Yeah, future-wise, yeah. Shall I be in? Follow it now. Really? Yeah. Thank God, end of this worst nightmare. There's just time for a final goodbye to the flat before we start our new life together. So old flats are now. It's all good to be out there, isn't it? Yeah. Yeah, we are moving on from bad vibes. Definitely. Onwards and upwards. You and Daddy. Say bye, bedroom! Bye! That's how I'm locked up, though, isn't it? Some days I feel like I can't cope, and today is one of them. I'm full of a cold and as a favour to my mum, I'm looking after my brother, Caden, as well as Theo. Together they can be a right handful, and being ill is just making things worse. I'm going to go and do the gym and all that, only for, like, a half an hour now. And then I'll come back in a bit and then we'll do whatever we're doing. Can you just not go to the gym? I'm going for half an hour. No, I'm not very well. All right, yo, I'm coming back in a bit and then I'll take Pheudo. So, and I'm coming back now instead of going later. Get yourself in a state like that is not helping your situation, is it? Pheudo's going there. Agreed to look after two kids if you can't. Do you know what I mean? I didn't know I was going to be ill. I haven't signed a contract, then. I'm going to be here when you look after someone else's kid. See you in a bit. Today I really needed Charlie to put me and Theo above himself and the gym. Nice having a nice pretty set table. That is not pretty. I'm going to iron it. No, I'm not. I'm not that bothered. You're moaning already, George.  No, I've got mushrooms. I want the mushroom sauce on the mushrooms. What, and you want the peppercorn sauce when you're staying? Yeah. Yeah? Well, I've got to be very difficult. Why not? I'm really excited, George. This is to you. I did the hard bit, obviously. I got all the stuff and I decorated the table a clean dorm. And you did the most delicious there. Look at you. Thanks. What? I feel a little bit better. Isn't this nice? Mm-hmm. It's what you imagined, because I did. It's like we've forgotten how to be romantic. We should be staring into each other's eyes. Instead, it feels like we're staring at the walls. And I don't know where to go from here.