// Path: app/src/main/java/com/google/android/diskusage/datasource/PortableFile.java
// public interface PortableFile {
//   @TargetApi(Build.VERSION_CODES.LOLLIPOP)
//   boolean isExternalStorageEmulated();
//   @TargetApi(Build.VERSION_CODES.LOLLIPOP)
//   boolean isExternalStorageRemovable();
// 
//   /** Retries with getAbsolutePath() on IOException */
//   String getCanonicalPath();
//   String getAbsolutePath();
// 
//   @TargetApi(Build.VERSION_CODES.GINGERBREAD)
//   long getTotalSpace();
// }


import java.io.File;
import java.io.IOException;
import android.annotation.TargetApi;
import android.os.Build;
import android.os.Environment;
import com.google.android.diskusage.datasource.PortableFile;
      return false;
    }

  }

  @Override
  public String getCanonicalPath() {
    try {
      return file.getCanonicalPath();
    } catch (Exception e) {
      return file.getAbsolutePath();
    }
  }

  @Override
  public String getAbsolutePath() {
    return file.getAbsolutePath();
  }

  @TargetApi(Build.VERSION_CODES.GINGERBREAD)
  @Override
  public long getTotalSpace() {
    return file.getTotalSpace();
  }

  @Override
  public boolean equals(Object o) {
    if (!(o instanceof PortableFile)) {
      return false;
    }
// Path: app/src/main/java/com/google/android/diskusage/datasource/PortableFile.java
// public interface PortableFile {
//   @TargetApi(Build.VERSION_CODES.LOLLIPOP)
//   boolean isExternalStorageEmulated();
//   @TargetApi(Build.VERSION_CODES.LOLLIPOP)
//   boolean isExternalStorageRemovable();
// 
//   /** Retries with getAbsolutePath() on IOException */
//   String getCanonicalPath();
//   String getAbsolutePath();
// 
//   @TargetApi(Build.VERSION_CODES.GINGERBREAD)
//   long getTotalSpace();
// }


// Path: app/src/main/java/com/google/android/diskusage/datasource/fast/PortableFileImpl.java
import java.io.File;
import java.io.IOException;
import android.annotation.TargetApi;
import android.os.Build;
import android.os.Environment;
import com.google.android.diskusage.datasource.PortableFile;

      return false;
    }

  }

  @Override
  public String getCanonicalPath() {
    try {
      return file.getCanonicalPath();
    } catch (Exception e) {
      return file.getAbsolutePath();
    }
  }

  @Override
  public String getAbsolutePath() {
    return file.getAbsolutePath();
  }

  @TargetApi(Build.VERSION_CODES.GINGERBREAD)
  @Override
  public long getTotalSpace() {
    return file.getTotalSpace();
  }

  @Override
  public boolean equals(Object o) {
    if (!(o instanceof PortableFile)) {
      return false;
    }
    PortableFile other = (PortableFile) o;