class Cp1252 {


    /**
     * The translation table.  If x is an unsigned byte from a .doc
     * text stream, then XLAT[x] is the Unicode character that byte
     * represents.
     */
    final private static char[] XLAT = createTable();


    /**
     * Static utility library, do not instantiate.
     */            
    private Cp1252() {
    }


    /**
     * Generates the translation table.  The Java String API is used for each
     * possible byte to determine the corresponding Unicode character.
     * 
     * @return  the Cp1252 translation table
     */
    private static char[] createTable() {<FILL_FUNCTION_BODY>}


    /**
     * Returns the Unicode character for the given Cp1252 byte.
     * 
     * @param b   an unsigned byte from 0 to 255
     * @return  the Unicode character corresponding to that byte
     */
    public static char decode(int b) {
        return XLAT[b];
    }


}

        char[] result = new char[256];
        byte[] b = new byte[1];
        for (int i = 0; i < 256; i++) try {
            b[0] = (byte)i;
            String s = new String(b, "Cp1252");
            result[i] = s.charAt(0);
        } catch (UnsupportedEncodingException e) {
            throw new RuntimeException(e);
        }
        return result;
    
<no_super_class>