recursive ds handed to jade