<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def getchar(self):
        u'''Get next character from queue.'''

        Cevent = INPUT_RECORD()
        count = DWORD(0)
        while 1:
            status = self.ReadConsoleInputW(self.hin, 
                                            byref(Cevent), 1, byref(count))
            if (status and 
                (count.value == 1) and 
                (Cevent.EventType == 1) and
                Cevent.Event.KeyEvent.bKeyDown):
                sym = keysym(Cevent.Event.KeyEvent.wVirtualKeyCode)
                if len(sym) == 0:
                    sym = Cevent.Event.KeyEvent.uChar.AsciiChar
                return sym