diff --git a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java
index a7467a1e3f4f969a28a026995cb9cc3263c5a1fb..c633131d3a42da12c704ac57b74d6f170d4bfa88 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java
@@ -74,7 +74,6 @@ public class I2PSnarkUtil {
     private static final int EEPGET_CONNECT_TIMEOUT_SHORT = 5*1000;
     public static final int DEFAULT_STARTUP_DELAY = 3;
     public static final boolean DEFAULT_USE_OPENTRACKERS = true;
-    public static final int DEFAULT_MAX_UP_BW = 8;  //KBps
     public static final int MAX_CONNECTIONS = 16; // per torrent
     public static final String PROP_MAX_BW = "i2cp.outboundBytesPerSecond";
     public static final boolean DEFAULT_USE_DHT = true;
@@ -97,7 +96,7 @@ public class I2PSnarkUtil {
         setI2CPConfig("127.0.0.1", 7654, null);
         _banlist = new ConcurrentHashSet<Hash>();
         _maxUploaders = Snark.MAX_TOTAL_UPLOADERS;
-        _maxUpBW = DEFAULT_MAX_UP_BW;
+        _maxUpBW = SnarkManager.DEFAULT_MAX_UP_BW;
         _maxConnections = MAX_CONNECTIONS;
         _startupDelay = DEFAULT_STARTUP_DELAY;
         _shouldUseOT = DEFAULT_USE_OPENTRACKERS;
diff --git a/apps/i2psnark/java/src/org/klomp/snark/MetaInfo.java b/apps/i2psnark/java/src/org/klomp/snark/MetaInfo.java
index 5fca72eb3b21c3fe16bdbc069f826d25610aa291..543753331b8aa755338228d17715b999f2484956 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/MetaInfo.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/MetaInfo.java
@@ -92,7 +92,7 @@ public class MetaInfo
     this.announce_list = announce_list;
     this.comment = null;
     this.created_by = null;
-    this.creation_date = 0;
+    this.creation_date = I2PAppContext.getGlobalContext().clock().now();
 
     // TODO if we add a parameter for other keys
     //if (other != null) {
@@ -444,7 +444,7 @@ public class MetaInfo
 
   /**
    * The creation date (ms) or zero.
-   * Not available for locally-created torrents.
+   * As of 0.9.19, available for locally-created torrents.
    * @since 0.9.7
    */
   public long getCreationDate() {
@@ -595,6 +595,14 @@ public class MetaInfo
             m.put("announce", announce);
         if (announce_list != null)
             m.put("announce-list", announce_list);
+        // misc. optional  top-level stuff
+        if (comment != null)
+            m.put("comment", comment);
+        if (created_by != null)
+            m.put("created by", created_by);
+        if (creation_date != 0)
+            m.put("creation date", creation_date / 1000);
+
         Map<String, BEValue> info = createInfoMap();
         m.put("info", info);
         // don't save this locally, we should only do this once
diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java
index b7759f901ab88cb173f6a6c5b121993d35ecfff1..430f6c7ae6e6fcaf89b03ae211f30327cc446b0f 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java
@@ -75,6 +75,8 @@ class PeerCheckerTask implements Runnable
         List<Peer> removed = new ArrayList<Peer>();
         int uploadLimit = coordinator.allowedUploaders();
         boolean overBWLimit = coordinator.overUpBWLimit();
+        if (_log.shouldLog(Log.DEBUG))
+            _log.debug("peers: " + peerList.size() + " limit: " + uploadLimit + " overBW? " + overBWLimit);
         DHT dht = _util.getDHT();
         for (Peer peer : peerList) {
 
diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java
index 31cf8884f5f4582d3e1218ae2c44928f842983c6..e6014becd07e9b614b6f128b2eac99b50ff39b29 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java
@@ -1465,8 +1465,8 @@ class PeerCoordinator implements PeerListener
   public int allowedUploaders()
   {
     if (listener != null && listener.overUploadLimit(uploaders)) {
-        // if (_log.shouldLog(Log.DEBUG))
-        //   _log.debug("Over limit, uploaders was: " + uploaders);
+           if (_log.shouldLog(Log.DEBUG))
+             _log.debug("Over limit, uploaders was: " + uploaders);
         return uploaders - 1;
     } else if (uploaders < MAX_UPLOADERS)
         return uploaders + 1;
diff --git a/apps/i2psnark/java/src/org/klomp/snark/Snark.java b/apps/i2psnark/java/src/org/klomp/snark/Snark.java
index b8111a98e626624c172b3b05f1b99a0e61404478..d5d5be1f80aeae2d3a90ebe6b6e625ad805fa053 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/Snark.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/Snark.java
@@ -1288,7 +1288,8 @@ public class Snark
         totalUploaders += c.uploaders;
     }
     int limit = _util.getMaxUploaders();
-    // debug("Total uploaders: " + totalUploaders + " Limit: " + limit, Snark.DEBUG);
+    if (_log.shouldLog(Log.DEBUG))
+        _log.debug("Total uploaders: " + totalUploaders + " Limit: " + limit);
     return totalUploaders > limit;
   }
 
diff --git a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
index bdda3deb7a4f41aaf686bbcb562f715cadf161d3..dc4ee1b85d104286844f5aa8017fee12d19c9e37 100644
--- a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
+++ b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java
@@ -118,8 +118,8 @@ public class SnarkManager implements CompleteListener {
     public static final String PROP_PRIVATETRACKERS = "i2psnark.privatetrackers";
     private static final String PROP_USE_DHT = "i2psnark.enableDHT";
 
-    public static final int MIN_UP_BW = 2;
-    public static final int DEFAULT_MAX_UP_BW = 10;
+    public static final int MIN_UP_BW = 10;
+    public static final int DEFAULT_MAX_UP_BW = 25;
     public static final int DEFAULT_STARTUP_DELAY = 3; 
     public static final int DEFAULT_REFRESH_DELAY_SECS = 60;
     private static final int DEFAULT_PAGE_SIZE = 50;