Add deep argument to descendants

obs: experimental