# How to compute associative binary operation on a finite set based on partial information?

I am working on a problem, and I must be staring at the answer without seeing it since it's among the introductory problems in my abstract algebra textbook. We're told that an associative binary operation $*$ has been defined on a finite set $\{w,x,y,z\}$. Then we are given an incomplete table that defines this operation, set up as follows: $$\begin{array}{c|c|c|c|c} *&w & x & y & z \\ \hline w & w & x & y & z\\ \hline x & x & w & y & z\\ \hline y & y & z & y & z\\ \hline z \end{array}$$

The results in the table correspond to the binary operation acting on the ordered pair consisting of the element of the row, then the element of the column. For example, the item in the third row and first column represents $y*w$. The first three rows of the table have been filled in, and I am asked to fill in the fourth row; namely, I must compute $z*w,z*x,z*y,$ and $z*z.$

Clearly the fact that the operation is associative must be enough to do this, but I am not seeing how. For example, if I try to compute $z*w,$ I could use substitution to write this as $z*w = z*(x*x) = (z*x)*x$, but I do not see how this helps me since I do not know the value of $z*x$.

Just realized I could answer this question by substituting for $z,$ using the identity $y * x = z.$