Very well. Now, we have all the tools in our pocket to proceed to the algorithm itself. So, we have some function F, which maps and these strings. We have m here is not equal to n, but really does not matter. So, we take n here and this function has a period, some are such as four and x, f of x plus r equals to f of x. We need to search for this spirit, and factoring case, this function f would be fa which we introduced in the previous steps. Again, here by hand beak, we will denote two in the power n. So, this is the scheme of our circuit and this spread must be the same as in Simon's algorithm. Instead of this part here, where we had other Mar transform and now we have QFT Quantum Fourier Transform, which is reasonable because instead of session for a period and zed modeller two research for periods and zed modeller and big. So, let's apply this scheme. Well, up to this point here, we have the same results as for Simon's algorithm. So, first we apply other model, though the input register to this, then we apply the oracle. In our case, it is not an oracle anymore, it is just an exponentiation, function, quantum operator implemented for the exponentiation as a function. After all this, we have all the function values among with the arguments stored in the system state. Now we're ready to perform measurement of the value register this, for the sake of clarity. As in Simon's case, we have after the value register measurement, you have only one function value in the value register, and all the arguments which map to this value. So, it's full reverse image of this f of x zero. In Simon's case, we had only two values here in the input register but here we have more, we have some a values. This a is the number of times which function period r fits into this week, and it is approximately this number of times. If you want to define it more precisely, then we will write like this. So, this is how many values will be stored in the system state here, and at this time to apply the main part of the algorithm, the Quantum Fourier Transform. So, we will have all these values in the input register and we get up like QFT, so let's do this. One divided by square root of a and n also goes here on the square root, and from that QFT formula. Now, the sum over all j's and the sum over all y's of exponent here two Pi is zero. Y divided by n and another exponent two Pi j r y divided by n and y. As you see this exponent here doesn't depend on j, so I am going to replace change places of this sums and get it from the inner sum. So, what will we get after this, we will have this expression. So, this is what we have in our input register after applying quantum fourier transform, and the Ys here are all the basis vectors of the argument state space. What I'm going to do now, I'm going to measure the probability, I'm going to compute the probability of measuring one particular Y any of particular Ys. So let us do it, if we have measure some particular Y, this sum here goes away and we have to square everything, and we get this. Now, this we are going to take the model and the absolute value and it is one, so we don't write it. You have this sum over Js, and the model on the absolute value of the sum e to b. I j r y divided by n and square it. So, this is our probability of measuring any of these particular, any of these Ys, any of the vectors, basis vectors of our subspace for the argument.