### Question:
UncapitalizeFirstFunction implements StringFunction { public String execute(String input) { for (int i = 0; i < input.length(); i++) { final char ch = input.charAt(i); if (!Character.isWhitespace(ch)) { if (Character.isLowerCase(ch)) { return input; } final char[] chars = input.toCharArray(); chars[i] = Character.toLowerCase(ch); return new String(chars); } } return input; }  String execute(String input);  }### Answer:
@Test public void test_execute() { UncapitalizeFirstFunction function = new UncapitalizeFirstFunction(); assertEquals("maurice", function.execute("Maurice")); assertEquals("mAURICE", function.execute("MAURICE")); assertEquals(" maurice", function.execute(" Maurice")); assertEquals("maurice Zeijen", function.execute("Maurice Zeijen")); }