private Version createVersion(int version) {
   Version v;
   final int N = versions.size();
   if (N == mMaxVersions) {
     // recycle the last version object & bitmap
     v = versions.get(N - 1);
     versions.remove(N - 1);
     v.version = version;
     bottom = versions.get(N - 2).version;
     v.bitmap.eraseColor(0);
   } else {
     v = new Version(version);
     if (v.bitmap == null) {
       // XXX handle memory error
       return null;
     }
   }
   if (versions.size() > 0) {
     // XXX: this will be slow; maybe we can do the alloc & copy at commit time
     v.canvas.drawBitmap(versions.get(0).bitmap, x * mTileSize, y * mTileSize, null);
   }
   versions.add(0, v);
   top = version;
   if (mDebug && DEBUG_VERBOSE) {
     Log.v(TAG, String.format("createVersion %d: [%2d,%2d] %s", version, x, y, debugVersions()));
   }
   return v;
 }
 @Override
 protected void printHelp(CommandLine cmd, Options options) {
   System.out.println(app + " version " + Version.version());
   System.out.println("Import data from file to database tables.\n");
   super.printHelp(cmd, options);
 }