 Hi everyone, I'm going to look at question five from the compound data one workshop. So this question here asks you to draw a memory diagram for the array after the code is run. So let's have a look at this step by step. So our first line here says that we want an integer array a, which has, which is a new integer array with five spaces. So I'll have my reference a, and it's going to be pointing to an array with five spaces for five integers. Okay, got a bit bigger, cool, so it's a bit messy, but that's okay. So we've got nothing there yet. And we have this loop here that we know goes through each item in an array where i is representing each index in an array. So we don't need to trace that too carefully, we know what it's doing. We can just have a look at the first few and see the pattern. So ai is equal to i plus one times i plus one. So for when i is zero, that is equal to zero plus one times zero plus one, which is just one times one, which is one, and that's our first one there. When i is equal to one, so the next index, we've got a one is equal to one plus one times one plus one, two times two, we get four. Our next index is two, so we've got array at index two is equal to two plus one times two plus one, three times three, which is nine. So we can start to see our pattern here. What it's doing is it's taking our index, adding one to it and squaring it. So without tracing that, we can see for index three, we're adding one. So it's four, four squared, 16. Index four, we've got add one is five, five squared is 25. And that's all you need to do for that question there, it's an easy one.