diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketAddress.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketAddress.java
index 7b35e7a6c23c61c1ec2d79d5eb06bd15a4359eb2..8b8f5046386f1be501ede7af37603be3c191ad1f 100644
--- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketAddress.java
+++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketAddress.java
@@ -26,7 +26,7 @@ public class I2PSocketAddress extends SocketAddress {
      *  Does a naming service lookup to resolve the dest.
      *  May take several seconds for b32.
      *  @param host hostname or b64 dest or b32, may have :port appended
-     *  @throws IllegalArgumentException for port < 0 or port > 65535 or invalid port
+     *  @throws IllegalArgumentException for port &lt; 0 or port &gt; 65535 or invalid port
      *  @since 0.9.9
      */
     public I2PSocketAddress(String host) {
@@ -51,7 +51,7 @@ public class I2PSocketAddress extends SocketAddress {
 
     /**
      *  Does not do a reverse lookup. Host will be null.
-     *  @throws IllegalArgumentException for port < 0 or port > 65535
+     *  @throws IllegalArgumentException for port &lt; 0 or port &gt; 65535
      */
     public I2PSocketAddress(Destination dest, int port) {
         if (dest == null)
@@ -66,7 +66,7 @@ public class I2PSocketAddress extends SocketAddress {
     /**
      *  Does a naming service lookup to resolve the dest.
      *  May take several seconds for b32.
-     *  @throws IllegalArgumentException for port < 0 or port > 65535
+     *  @throws IllegalArgumentException for port &lt; 0 or port &gt; 65535
      */
     public I2PSocketAddress(String host, int port) {
         if (port < 0 || port > 65535)
@@ -77,7 +77,7 @@ public class I2PSocketAddress extends SocketAddress {
     }
 
     /**
-     *  @throws IllegalArgumentException for port < 0 or port > 65535
+     *  @throws IllegalArgumentException for port &lt; 0 or port &gt; 65535
      */
     public static I2PSocketAddress createUnresolved(String host, int port) {
         return new I2PSocketAddress(port, host);
diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketException.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketException.java
index 4be4d532b0bd5491d8fb415c4b5901de6d386738..a4532debc686300ba4f15e210e31a70364be02a8 100644
--- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketException.java
+++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketException.java
@@ -32,7 +32,7 @@ public class I2PSocketException extends SocketException {
      *  Standard codes from client-side I2CP are 256-511, defined in SendMessageStatusListener.
      *  Standard codes from streaming are 512-767, defined here.
      *
-     *  @param status >= 0 from MessageStatusMessage or SendMessageStatusListener
+     *  @param status &gt;= 0 from MessageStatusMessage or SendMessageStatusListener
      */
     public I2PSocketException(int status) {
         super();
diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManager.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManager.java
index a969581bd0aa677b2e5ddd06f30198216f675927..ab183a817285000c4628f791bba0bbdd9c6d7e35 100644
--- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManager.java
+++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManager.java
@@ -240,7 +240,7 @@ public interface I2PSocketManager {
     /**
      *  Like connect() but returns a real Socket, and throws only IOE,
      *  for easier porting of apps.
-     *  @param timeout ms if > 0, forces blocking (disables connectDelay)
+     *  @param timeout ms if &gt; 0, forces blocking (disables connectDelay)
      *  @since 0.8.4
      */
     public Socket connectToSocket(Destination peer, int timeout) throws IOException;
diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java
index 466c8c88af9960a447d66c3c360992b29da22037..3490f18e3c6dee6c0fd156d1faecdca35bc893db 100644
--- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java
+++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java
@@ -80,7 +80,7 @@ public class I2PSocketManagerFactory {
      * The nonblocking createDisconnectedManager() is preferred.
      * 
      * @param host I2CP host null to use default, ignored if in router context
-     * @param port I2CP port <= 0 to use default, ignored if in router context
+     * @param port I2CP port &lt;= 0 to use default, ignored if in router context
      * @return the newly created socket manager, or null if there were errors
      */
     public static I2PSocketManager createManager(String host, int port) {
@@ -95,7 +95,7 @@ public class I2PSocketManagerFactory {
      * The nonblocking createDisconnectedManager() is preferred.
      *
      * @param i2cpHost I2CP host null to use default, ignored if in router context
-     * @param i2cpPort I2CP port <= 0 to use default, ignored if in router context
+     * @param i2cpPort I2CP port &lt;= 0 to use default, ignored if in router context
      * @param opts Streaming and I2CP options, may be null
      * @return the newly created socket manager, or null if there were errors
      */
@@ -157,7 +157,7 @@ public class I2PSocketManagerFactory {
      * @param myPrivateKeyStream private key stream, format is specified in {@link net.i2p.data.PrivateKeyFile PrivateKeyFile}
      *                           or null for a transient destination. Caller must close.
      * @param i2cpHost I2CP host null to use default, ignored if in router context
-     * @param i2cpPort I2CP port <= 0 to use default, ignored if in router context
+     * @param i2cpPort I2CP port &lt;= 0 to use default, ignored if in router context
      * @param opts Streaming and I2CP options, may be null
      * @return the newly created socket manager, or null if there were errors
      */
@@ -184,7 +184,7 @@ public class I2PSocketManagerFactory {
      * @param myPrivateKeyStream private key stream, format is specified in {@link net.i2p.data.PrivateKeyFile PrivateKeyFile}
      *                           or null for a transient destination. Caller must close.
      * @param i2cpHost I2CP host null to use default, ignored if in router context
-     * @param i2cpPort I2CP port <= 0 to use default, ignored if in router context
+     * @param i2cpPort I2CP port &lt;= 0 to use default, ignored if in router context
      * @param opts Streaming and I2CP options, may be null
      * @return the newly created socket manager, non-null (throws on error)
      * @since 0.9.8
@@ -216,7 +216,7 @@ public class I2PSocketManagerFactory {
      * @param myPrivateKeyStream private key stream, format is specified in {@link net.i2p.data.PrivateKeyFile PrivateKeyFile}
      *                           non-null. Caller must close.
      * @param i2cpHost I2CP host null to use default, ignored if in router context
-     * @param i2cpPort I2CP port <= 0 to use default, ignored if in router context
+     * @param i2cpPort I2CP port &lt;= 0 to use default, ignored if in router context
      * @param opts Streaming and I2CP options, may be null
      * @param connect true to connect (blocking)
      * @return the newly created socket manager, non-null (throws on error)
diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketOptions.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketOptions.java
index 692c04f7b67d3a9ed313f69e82ae90a81db98a19..685b910bb30b4f0fb607fefec76c6941a31151df 100644
--- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketOptions.java
+++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketOptions.java
@@ -18,7 +18,7 @@ public interface I2PSocketOptions {
      * How long we will wait for the ACK from a SYN, in milliseconds.
      *
      * Default 60 seconds. Max of 2 minutes enforced in Connection.java,
-     * and it also interprets <= 0 as default.
+     * and it also interprets &lt;= 0 as default.
      *
      * @return milliseconds to wait, or -1 if we will wait indefinitely
      */
@@ -28,7 +28,7 @@ public interface I2PSocketOptions {
      * Define how long we will wait for the ACK from a SYN, in milliseconds.
      *
      * Default 60 seconds. Max of 2 minutes enforced in Connection.java,
-     * and it also interprets <= 0 as default.
+     * and it also interprets &lt;= 0 as default.
      *
      * @param ms timeout in ms
      */
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/Connection.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/Connection.java
index 0d295d73cf67b159f4cecd5687124dbf22372dd5..1e33c793b6517eb7ff32eb9fa28e6b5ea059190b 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/Connection.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/Connection.java
@@ -177,7 +177,7 @@ class Connection {
      *
      * @param timeoutMs 0 or negative means wait forever, 5 minutes max
      * @return true if the packet should be sent, false for a fatal error
-     *         will return false after 5 minutes even if timeoutMs is <= 0.
+     *         will return false after 5 minutes even if timeoutMs is &lt;= 0.
      */
     public boolean packetSendChoke(long timeoutMs) throws IOException, InterruptedException {
         long start = _context.clock().now();
@@ -635,7 +635,7 @@ class Connection {
     /**
      *  Always true at the start, even if we haven't gotten a reply on an
      *  outbound connection. Only set to false on disconnect.
-     *  For outbound, use getHighestAckedThrough() >= 0 also,
+     *  For outbound, use getHighestAckedThrough() &gt;= 0 also,
      *  to determine if the connection is up.
      *
      *  In general, this is true until either:
@@ -961,9 +961,9 @@ class Connection {
     }
 
     /**
-     *  If the next send time is currently >= 0 (i.e. not "never"),
+     *  If the next send time is currently &gt;= 0 (i.e. not "never"),
      *  this may make the next time sooner but will not make it later.
-     *  If the next send time is currently < 0 (i.e. "never"),
+     *  If the next send time is currently &lt; 0 (i.e. "never"),
      *  this will set it to the time specified, but not later than
      *  options.getSendAckDelay() from now (1000 ms)
      */
@@ -1328,7 +1328,7 @@ class Connection {
          * we have to use forceReschedule() instead of schedule() below,
          * to prevent duplicates in the timer queue.
          *
-         * don't synchronize this, deadlock with ackPackets->ackReceived->SimpleTimer2.cancel
+         * don't synchronize this, deadlock with ackPackets-&gt;ackReceived-&gt;SimpleTimer2.cancel
          *
          * @return true if the packet was sent, false if it was not
          */
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionDataReceiver.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionDataReceiver.java
index 6836cd74aedf7ae7d86614e9a8a9866c499223b5..c8098024c41a6951c7e160bcf3dba78f4ad32235 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionDataReceiver.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionDataReceiver.java
@@ -11,7 +11,7 @@ import net.i2p.util.Log;
  * delivery, or even the generation of a new packet.  This class
  * is the only one that builds useful outbound Packet objects.
  *<p>
- * MessageOutputStream -> ConnectionDataReceiver -> Connection -> PacketQueue -> I2PSession
+ * MessageOutputStream -&gt; ConnectionDataReceiver -&gt; Connection -&gt; PacketQueue -&gt; I2PSession
  *<p>
  * There's one of these per MessageOutputStream.
  * It stores no state. It sends everything to the Connection unless
@@ -36,7 +36,7 @@ class ConnectionDataReceiver implements MessageOutputStream.DataReceiver {
      * This tells the flusher in MessageOutputStream whether to flush.
      * It won't flush if this returns true.
      *
-     * It was: return con.getUnackedPacketsSent() > 0 (i.e. Nagle)
+     * It was: return con.getUnackedPacketsSent() &gt; 0 (i.e. Nagle)
      * But then, for data that fills more than one packet, the last part of
      * the data isn't sent until all the previous packets are acked. Which is very slow.
      * The poor interaction of Nagle and Delayed Acknowledgements is well-documented.
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionPacketHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionPacketHandler.java
index 9372c691313a8ce4b6c69920077dd570eda76a51..bb5dd63f4b24c35ad666b8efc46747b7a65e8f3c 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionPacketHandler.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/ConnectionPacketHandler.java
@@ -13,7 +13,7 @@ import net.i2p.util.SimpleTimer;
  * Receive a packet for a particular connection - placing the data onto the
  * queue, marking packets as acked, updating various fields, etc.
  *<p>
- * I2PSession -> MessageHandler -> PacketHandler -> ConnectionPacketHandler -> MessageInputStream
+ * I2PSession -&gt; MessageHandler -&gt; PacketHandler -&gt; ConnectionPacketHandler -&gt; MessageInputStream
  *<p>
  * One of these is instantiated per-Destination
  * (i.e. per-ConnectionManager, not per-Connection).
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java
index ae9fb0ef55ff163edb4a383ccbc1e5ef97f087cc..94a4c4ae6497676b198cfaccf7cae41014aac99d 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java
@@ -632,7 +632,7 @@ public class I2PSocketManagerFull implements I2PSocketManager {
     /**
      *  Like connect() but returns a real Socket, and throws only IOE,
      *  for easier porting of apps.
-     *  @param timeout ms if > 0, forces blocking (disables connectDelay)
+     *  @param timeout ms if &gt; 0, forces blocking (disables connectDelay)
      *  @since 0.8.4
      */
     public Socket connectToSocket(Destination peer, int timeout) throws IOException {
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketOptionsImpl.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketOptionsImpl.java
index 63401f92dde76139486040789a65132b05fe1828..b3576985993cb13115f4f728ce2405762a537435 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketOptionsImpl.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketOptionsImpl.java
@@ -122,7 +122,7 @@ class I2PSocketOptionsImpl implements I2PSocketOptions {
      * How long we will wait for the ACK from a SYN, in milliseconds.
      *
      * Default 60 seconds. Max of 2 minutes enforced in Connection.java,
-     * and it also interprets <= 0 as default.
+     * and it also interprets &lt;= 0 as default.
      *
      * @return milliseconds to wait, or -1 if we will wait indefinitely
      */
@@ -134,7 +134,7 @@ class I2PSocketOptionsImpl implements I2PSocketOptions {
      * Define how long we will wait for the ACK from a SYN, in milliseconds.
      *
      * Default 60 seconds. Max of 2 minutes enforced in Connection.java,
-     * and it also interprets <= 0 as default.
+     * and it also interprets &lt;= 0 as default.
      *
      */
     public void setConnectTimeout(long ms) {
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageHandler.java
index c14688050faafe8b72f4c7d679362469a452a5e9..477f7476fd809d7de2f9296315d74086e6f5d409 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageHandler.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageHandler.java
@@ -14,8 +14,8 @@ import net.i2p.util.Log;
 /**
  * Receive raw information from the I2PSession and turn it into
  * Packets, if we can.
- *<p>
- * I2PSession -> MessageHandler -> PacketHandler -> ConnectionPacketHandler -> MessageInputStream
+ *&lt;p&gt;
+ * I2PSession -&gt; MessageHandler -&gt; PacketHandler -&gt; ConnectionPacketHandler -&gt; MessageInputStream
  */
 class MessageHandler implements I2PSessionMuxedListener {
     private final ConnectionManager _manager;
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageInputStream.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageInputStream.java
index a77d282fe523ec33051dc55df4e108c2bbfa0d68..adf401a34388062eee8e6a2298f2786ab6fa70ce 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageInputStream.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageInputStream.java
@@ -16,9 +16,9 @@ import net.i2p.util.Log;
 /**
  * Stream that can be given messages out of order 
  * yet present them in order.
- *<p>
- * I2PSession -> MessageHandler -> PacketHandler -> ConnectionPacketHandler -> MessageInputStream
- *<p>
+ *&lt;p&gt;
+ * I2PSession -&gt; MessageHandler -&gt; PacketHandler -&gt; ConnectionPacketHandler -&gt; MessageInputStream
+ *&lt;p&gt;
  * This buffers unlimited data via messageReceived() -
  * limiting / blocking is done in ConnectionPacketHandler.receivePacket().
  *
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageOutputStream.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageOutputStream.java
index 59c6de87bf57af5c1128411c0a36146a22a13b37..b5f1113d9e57ea80d6218d7aaaaa548a50f43d34 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageOutputStream.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/MessageOutputStream.java
@@ -16,8 +16,8 @@ import net.i2p.util.SimpleTimer2;
  * A stream that we can shove data into that fires off those bytes
  * on flush or when the buffer is full.  It also blocks according
  * to the data receiver's needs.
- *<p>
- * MessageOutputStream -> ConnectionDataReceiver -> Connection -> PacketQueue -> I2PSession
+ *&lt;p&gt;
+ * MessageOutputStream -&gt; ConnectionDataReceiver -&gt; Connection -&gt; PacketQueue -&gt; I2PSession
  */
 class MessageOutputStream extends OutputStream {
     private final I2PAppContext _context;
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java
index 483a8d4eeda85e5405b14b2f37a1c4857870b00b..b9b7397021159c6a5197295960c109f48b54dd95 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/Packet.java
@@ -232,7 +232,7 @@ class Packet {
     }
 
     /** 
-     * @param id if < 0, sets FLAG_NO_ACK
+     * @param id if &lt; 0, sets FLAG_NO_ACK
      */
     public void setAckThrough(long id) { 
         if (id < 0)
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketHandler.java
index 4a96693b4ba0a28dca9f8283cd725c7e5e0d650b..7ca70cd2781e1a34098ff82854cc2fa710746d78 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketHandler.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketHandler.java
@@ -11,8 +11,8 @@ import net.i2p.util.Log;
 /**
  * receive a packet and dispatch it correctly to the connection specified,
  * the server socket, or queue a reply RST packet.
- *<p>
- * I2PSession -> MessageHandler -> PacketHandler -> ConnectionPacketHandler -> MessageInputStream
+ *&lt;p&gt;
+ * I2PSession -&gt; MessageHandler -&gt; PacketHandler -&gt; ConnectionPacketHandler -&gt; MessageInputStream
  */
 class PacketHandler {
     private final ConnectionManager _manager;
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketQueue.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketQueue.java
index 943a0c03f5bb76f71fbb96697762f75c599090f4..b54b05c18f21d1f07dd55e5f6dba0ba021d486cc 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketQueue.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/PacketQueue.java
@@ -23,8 +23,8 @@ import net.i2p.util.SimpleTimer2;
  * Well, thats the theory at least... in practice we just
  * send them immediately with no blocking, since the 
  * mode=bestEffort doesnt block in the SDK.
- *<p>
- * MessageOutputStream -> ConnectionDataReceiver -> Connection -> PacketQueue -> I2PSession
+ *&lt;p&gt;
+ * MessageOutputStream -&gt; ConnectionDataReceiver -&gt; Connection -&gt; PacketQueue -&gt; I2PSession
  */
 class PacketQueue implements SendMessageStatusListener, Closeable {
     private final I2PAppContext _context;
diff --git a/apps/streaming/java/src/net/i2p/client/streaming/impl/StandardSocket.java b/apps/streaming/java/src/net/i2p/client/streaming/impl/StandardSocket.java
index 0a1fb093e66d6facee5a974de524c1423675efdd..f73930d011159f3d42724c94b28a463821c3e41e 100644
--- a/apps/streaming/java/src/net/i2p/client/streaming/impl/StandardSocket.java
+++ b/apps/streaming/java/src/net/i2p/client/streaming/impl/StandardSocket.java
@@ -21,7 +21,7 @@ import net.i2p.client.streaming.I2PSocketOptions;
  * null for some methods.
  *
  * StandardSockets are always bound, and always start out connected
- * (unless connectDelay is > 0).
+ * (unless connectDelay is &gt; 0).
  * You may not create an unbound StandardSocket.
  * Create this through the SocketManager.
  *
diff --git a/router/java/src/net/i2p/router/util/DecayingHashSet.java b/router/java/src/net/i2p/router/util/DecayingHashSet.java
index ea955bcb1f995ef16ecb2b4f17af7f213ae36e88..bdf8d275dd2102ff24ccbc3eaa3ddc805d3f4436 100644
--- a/router/java/src/net/i2p/router/util/DecayingHashSet.java
+++ b/router/java/src/net/i2p/router/util/DecayingHashSet.java
@@ -43,7 +43,7 @@ import net.i2p.util.Log;
  * to implement something with a zero false positive rate, and uses less memory
  * for almost all bandwidth classes.
  *
- * This has a strictly zero false positive rate for <= 8 byte keys.
+ * This has a strictly zero false positive rate for &lt;= 8 byte keys.
  * For larger keys, it is 1 / (2**64) ~= 5E-20, which is better than
  * DBF for any entry count greater than about 14K.
  *
@@ -208,7 +208,7 @@ public class DecayingHashSet extends DecayingBloomFilter {
     }
     
     /**
-     *  This saves the data as-is if the length is <= 8 bytes,
+     *  This saves the data as-is if the length is &lt;= 8 bytes,
      *  otherwise it stores an 8-byte hash.
      *  Hash function is from DataHelper, modded to get
      *  the maximum entropy given the length of the data.
diff --git a/router/java/src/org/xlattice/crypto/filters/KeySelector.java b/router/java/src/org/xlattice/crypto/filters/KeySelector.java
index 878e40758cce65412f895f4a4ae45e46cc108be2..f734b8decf6b5176868e0296aa4df1c46d29ccf9 100644
--- a/router/java/src/org/xlattice/crypto/filters/KeySelector.java
+++ b/router/java/src/org/xlattice/crypto/filters/KeySelector.java
@@ -61,7 +61,7 @@ public class KeySelector {
      * Note that if k and m are too big, the GenericWordSelector blows up -
      * The max for 32-byte keys is m=23 and k=11.
      * The precise restriction appears to be:
-     * ((5k + (k-1)(m-5)) / 8) + 2 < keySizeInBytes
+     * ((5k + (k-1)(m-5)) / 8) + 2 &lt; keySizeInBytes
      *
      * It isn't clear how to fix this.
      */