### Question:
PetrifyableTDoubleArrayList extends AbstractPetrifyable implements PetrifyableTDoubleList { @Override public boolean add(double val) { return myList.add(val); } PetrifyableTDoubleArrayList();  PetrifyableTDoubleArrayList(double[] values);  PetrifyableTDoubleArrayList(int capacity);  PetrifyableTDoubleArrayList(TDoubleCollection values); @Override boolean add(double val); @Override void add(double[] vals); @Override void add(double[] vals, int offset, int length); @Override boolean addAll(Collection<? extends Double> collection); @Override boolean addAll(double[] array); @Override boolean addAll(TDoubleCollection collection); @Override int binarySearch(double value); @Override int binarySearch(double value, int fromIndex, int toIndex); @Override void clear(); @Override boolean contains(double value); @Override boolean containsAll(Collection<?> collection); @Override boolean containsAll(double[] array); @Override boolean containsAll(TDoubleCollection collection); @Override void fill(double val); @Override void fill(int fromIndex, int toIndex, double val); @Override boolean forEach(TDoubleProcedure procedure); @Override boolean forEachDescending(TDoubleProcedure procedure); @Override double get(int offset); @Override double getNoEntryValue(); @Override long getSizeBytes(); @Override PetrifyableTDoubleArrayList grep(TDoubleProcedure condition); @Override int indexOf(double value); @Override int indexOf(int offset, double value); @Override void insert(int offset, double value); @Override void insert(int offset, double[] values); @Override void insert(int offset, double[] values, int valOffset, int len); @Override PetrifyableTDoubleArrayList inverseGrep(TDoubleProcedure condition); @Override boolean isEmpty(); @Override TDoubleIterator iterator(); @Override int lastIndexOf(double value); @Override int lastIndexOf(int offset, double value); @Override double max(); @Override double min(); @Override synchronized void petrify(); @Override boolean remove(double value); @Override void remove(int offset, int length); @Override boolean removeAll(Collection<?> collection); @Override boolean removeAll(double[] array); @Override boolean removeAll(TDoubleCollection collection); @Override double removeAt(int offset); @Override double replace(int offset, double val); @Override boolean retainAll(Collection<?> collection); @Override boolean retainAll(double[] array); @Override boolean retainAll(TDoubleCollection collection); @Override void reverse(); @Override void reverse(int from, int to); @Override double set(int offset, double val); @Override void set(int offset, double[] values); @Override void set(int offset, double[] values, int valOffset, int length); @Override void shuffle(Random rand); @Override int size(); @Override void sort(); @Override void sort(int fromIndex, int toIndex); @Override PetrifyableTDoubleArrayList subList(int begin, int end); @Override double sum(); @Override double[] toArray(); @Override double[] toArray(double[] dest); @Override double[] toArray(double[] dest, int offset, int len); @Override double[] toArray(double[] dest, int sourcePos, int destPos, int len); @Override double[] toArray(int offset, int len); @Override void transformValues(TDoubleFunction function);  }### Answer:
@Test(expected = UnsupportedOperationException.class) public void testAddAfterPetrify1() { PETRIFIED_LIST.add(TEST_DOUBLE); }
@Test(expected = UnsupportedOperationException.class) public void testAddAfterPetrify2() { PETRIFIED_LIST.add(TEST_DOUBLE_ARRAY); }
@Test(expected = UnsupportedOperationException.class) public void testAddAfterPetrify3() { PETRIFIED_LIST.add(TEST_DOUBLE_ARRAY, 0, 1); }