/**
  * Copies source to dest.
  *
  * <p>Neither source nor dest can be null.
  *
  * <p>Acquires synchronization lock on source, then dest before copying.
  *
  * @param source SynchronizedDescriptiveStatistics to copy
  * @param dest SynchronizedDescriptiveStatistics to copy to
  * @throws NullPointerException if either source or dest is null
  */
 public static void copy(
     SynchronizedDescriptiveStatistics source, SynchronizedDescriptiveStatistics dest) {
   synchronized (source) {
     synchronized (dest) {
       DescriptiveStatistics.copy(source, dest);
     }
   }
 }