Nested watch function