this is highly dependent on the two variables being initialized in the right order.