added deep property binding