### Question:
StringUtils { @Nonnull public static String extractFileHash(@Nonnull final String text) throws IOException { final Matcher hashMatcher = PATTERN_FILE_HASH.matcher(text.trim()); if (hashMatcher.find()) { return hashMatcher.group(1); } else { throw new IOException("Can't extract file hash from '" + text + '\''); } } private  StringUtils(); @Nonnull static String escapeFileName(@Nonnull final String text); @Nonnull static String extractFileHash(@Nonnull final String text); static int printTextProgress(@Nonnull final String text, final long value, final long maxValue, final int progressBarWidth, final int lastValue); @Nonnull @MustNotContainNull static List<String> extractJdepsModuleNames(@Nonnull final String text);  }### Answer:
@Test public void testExtractFileHash() throws IOException { assertEquals("ab8674dd80538dd47279d90c37fd51bdac713d2e67ec09c3b4d1cb5d16a3cfa8", StringUtils.extractFileHash("ab8674dd80538dd47279d90c37fd51bdac713d2e67ec09c3b4d1cb5d16a3cfa8 OpenJDK8-OPENJ9_ppc64_AIX_jdk8u162-b12_openj9-0.8.0.tar.gz")); }