Allow arbitrary depth