protected Keywords(Context context) {
        context.put(keywordsKey, this);
        log = Log.instance(context);
        names = Name.Table.instance(context);

        for (Token t : Token.values()) {
            if (t.name != null)
                enterKeyword(t.name, t);
            else
                tokenName[t.ordinal()] = null;
        }

        key = new Token[maxKey+1];
        for (int i = 0; i <= maxKey; i++) key[i] = IDENTIFIER;
        for (Token t : Token.values()) {
            if (t.name != null)
                key[tokenName[t.ordinal()].index] = t;
        }
    }