static void readliteral_chr(struct buf *b, termchar *c, unsigned long *state)
static void readliteral_chr(struct buf *b, termchar *c, termline *ldata, unsigned long *state)
static void readliteral_chr(struct buf *b, termchar *c, unsigned long *state){    int byte;    /*     * 00000000-0000007F: 0xxxxxxx     * 00000080-00003FFF: 10xxxxxx xxxxxxxx     * 00004000-001FFFFF: 110xxxxx xxxxxxxx xxxxxxxx     * 00200000-0FFFFFFF: 1110xxxx xxxxxxxx xxxxxxxx xxxxxxxx     * 10000000-FFFFFFFF: 11110ZZZ xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx     */    byte = get(b);    if (byte < 0x80) {	c->chr = byte | *state;    } else if (byte < 0xC0) {	c->chr = (byte &~ 0xC0) << 8;	c->chr |= get(b);    } else if (byte < 0xE0) {	c->chr = (byte &~ 0xE0) << 16;	c->chr |= get(b) << 8;	c->chr |= get(b);    } else if (byte < 0xF0) {	c->chr = (byte &~ 0xF0) << 24;	c->chr |= get(b) << 16;	c->chr |= get(b) << 8;	c->chr |= get(b);    } else {	assert(byte == 0xF0);	c->chr = get(b) << 24;	c->chr |= get(b) << 16;	c->chr |= get(b) << 8;	c->chr |= get(b);    }    *state = c->chr & ~0xFF;}