added nth with indexed protocol