private void doType(int keycode) {
		boolean shift = (keycode != KeyEvent.VK_ENTER && ((keyboard.getShifts() & (1 << SHIFT)) != 0));
		boolean ctrl = (keycode != KeyEvent.VK_ENTER && ((keyboard.getShifts() & (1 << CTRL)) != 0));
		boolean alt = (keycode != KeyEvent.VK_ENTER && ((keyboard.getShifts() & (1 << ALT)) != 0));
		if (shift)
			press(KeyEvent.VK_SHIFT);
		if (ctrl)
			press(KeyEvent.VK_CONTROL);
		if (alt)
			press(KeyEvent.VK_ALT);

		type(keycode);

		if (shift)
			release(KeyEvent.VK_SHIFT);
		if (ctrl)
			release(KeyEvent.VK_CONTROL);
		if (alt)
			release(KeyEvent.VK_ALT);
	}