@Override
  public Iterator<ShardCheckpoint> iterator() {
    return shardCheckpoints.iterator();
  }
@Test(expected = UnsupportedOperationException.class)
  public void isImmutable() {
    KinesisReaderCheckpoint checkpoint = new KinesisReaderCheckpoint(asList(a, b, c));
    Iterator<ShardCheckpoint> iterator = checkpoint.iterator();
    iterator.remove();
  }