added findFirst option