So we're trying to keep it roughly t like the level of function calls. We just split up into its individual function calls. And in this case, we have like a slice syntax for filtering, so we split that up as well. So then you basically run each step, you have the before data frame ind the after data frame. That's right. We run each step,. get like the left hand side and the right hand side. And then we essentially have some like, special rules where, if we do soit values, we'll ie, use this rule for drawing arrows. If we see a group by, we'll using this rule for Drawing arrows. But i guess the