added recursive property