  @Test
  public void testDot() throws IOException {

    HMapKL<String> m1 = new HMapKL<String>();

    m1.put("1", 2L);
    m1.put("2", 1L);
    m1.put("3", 3L);
    m1.put("" + Integer.MAX_VALUE, (long) Integer.MAX_VALUE);

    HMapKL<String> m2 = new HMapKL<String>();

    m2.put("1", 1L);
    m2.put("2", 4L);
    m2.put("4", 5L);
    m2.put("" + Integer.MAX_VALUE, (long) Integer.MAX_VALUE);

    long s = m1.dot(m2);

    assertTrue(s > Integer.MAX_VALUE);
    assertEquals((long) Integer.MAX_VALUE * Integer.MAX_VALUE + 6L, s);
  }