### Question:
HDPath extends AbstractList<ChildNumber> { @Override public int size() { return unmodifiableList.size(); } HDPath(boolean hasPrivateKey, List<ChildNumber> list);  HDPath(List<ChildNumber> list); static HDPath M(List<ChildNumber> list); static HDPath M(); static HDPath M(ChildNumber childNumber); static HDPath M(ChildNumber... children); static HDPath m(List<ChildNumber> list); static HDPath m(); static HDPath m(ChildNumber childNumber); static HDPath m(ChildNumber... children); static HDPath parsePath(@Nonnull String path); boolean hasPrivateKey(); HDPath extend(ChildNumber child1, ChildNumber... children); HDPath extend(HDPath path2); HDPath extend(List<ChildNumber> path2); @Override ChildNumber get(int index); @Override int size(); @Override String toString();  }### Answer:
@Test public void testPrimaryConstructor() throws Exception { HDPath path = new HDPath(true, Collections.<ChildNumber>emptyList()); Assert.assertTrue("Has private key returns false incorrectly", path.hasPrivateKey); Assert.assertEquals("Path not empty", path.size(), 0); }