### Question:
HtmlSubsetLanguage extends HtmlLanguage { @Override public HtmlSubsetLanguage clone() { HtmlSubsetLanguage copy = new HtmlSubsetLanguage(getName(), documentHandler, headingLevel, supportedBlockTypes, supportedSpanTypes, tagNameSubstitutions, spanElementStrategies, xhtmlStrict); copy.setFileExtensions(getFileExtensions()); copy.setExtendsLanguage(getExtendsLanguage()); copy.setParseCleansHtml(isParseCleansHtml()); return copy; } HtmlSubsetLanguage(String name, HtmlDocumentHandler documentHandler, int headingLevel,
			Set<BlockType> blockTypes, Set<SpanType> spanTypes, Map<SpanType, String> tagNameSubstitutions,
			List<SpanHtmlElementStrategy> spanElementStrategies);  HtmlSubsetLanguage(String name, HtmlDocumentHandler documentHandler, int headingLevel,
			Set<BlockType> blockTypes, Set<SpanType> spanTypes, Map<SpanType, String> tagNameSubstitutions,
			List<SpanHtmlElementStrategy> spanElementStrategies, boolean xhtmlStrict); Set<BlockType> getSupportedBlockTypes(); Set<SpanType> getSupportedSpanTypes(); int getSupportedHeadingLevel(); Map<SpanType, String> getTagNameSubstitutions(); @Override HtmlSubsetDocumentBuilder createDocumentBuilder(Writer out, boolean formatting); @Override HtmlSubsetLanguage clone(); boolean isXhtmlStrict();  }### Answer:
@Test public void parseCleansHtmlSetOnClone() { HtmlLanguage htmlLanguage = newHtmlSubsetLanguage(BlockType.PARAGRAPH); htmlLanguage.setParseCleansHtml(true); assertEquals(htmlLanguage.isParseCleansHtml(), htmlLanguage.clone().isParseCleansHtml()); htmlLanguage.setParseCleansHtml(false); assertEquals(htmlLanguage.isParseCleansHtml(), htmlLanguage.clone().isParseCleansHtml()); }