@mcc but python has to have some times to be able to figure out that you actually meant self.row
my theory is that it checked the arguments of your function, it saw an unidentified token "row" and did reflection to check if it's either undefined or if it is a property of one of your arguments (which is a pretty smart way to do it if that's what's going on)