class Declassifier[principal P, label L] { public static String{L}[]{L} declassifyStringArray{L}(String{P:}[]{P:} x_0) where caller (P) { String{P:}[]{L} x = declassify(x_0, {L}); if (x == null) return null; String{L}[]{L} y = new String[x.length]; try { for (int i = 0; i < x.length; i++) y[i] = declassify(x[i], {L}); } catch (ArrayIndexOutOfBoundsException ignored) { } catch (ArrayStoreException ignored) { } return y; } }