anchor.diff:    search.append(input);
   }
   
  -void insertFilterView(drive.DriveApi api, List<File> files, int pageSize) {
  +void insertFilterView(drive.DriveApi api, List<Folder> folders, List<File> files, int pageSize) {
     var filterDiv = querySelector('#filter');
   
     SpanElement divCount = new SpanElement();
  
positive.code: // Obtain an authenticated HTTP client which can be used for accessing Google
  // APIs.
  Future authorizedClient(InputElement loginButton, auth.ClientId id, scopes) {
    return auth.createImplicitBrowserFlow(id, scopes)
      .then((auth.BrowserOAuth2Flow flow) {
      return flow.clientViaUserConsent(immediate: false).catchError((_) {
        return loginButton.onClick.first.then((_) {
          return flow.clientViaUserConsent(immediate: true);
  
negative.code:   }
  }
  
  class Folder {
    String hash;
    bool isHidden;
    String imagePath;
    String memo;
  
    Folder(String _hash, bool _isHidden, String _imagePath, String _memo) {
      this.hash = _hash;
      this.isHidden = _isHidden;
      this.imagePath = _imagePath;
      this.memo = _memo;
    }
  }
  
  List<File> toFileList(List<drive.File> _files, bool _isHidden, String _icon) {
    List<File> files = new List<File>();
    for (drive.File driveFile in _files) {
  