private void drawMouse(final Graphics g) {
        final Point location = Mouse.getLocation();
        while (!MOUSE_PATH_POINTS.isEmpty() && MOUSE_PATH_POINTS.peek().isUp())
            MOUSE_PATH_POINTS.remove();
        Point clientCursor = Mouse.getLocation();
        MousePathPoint mpp = new MousePathPoint(clientCursor.x, clientCursor.y, 1500);
        if (MOUSE_PATH_POINTS.isEmpty() || !MOUSE_PATH_POINTS.getLast().equals(mpp))
            MOUSE_PATH_POINTS.add(mpp);
        MousePathPoint lastPoint = null;
        for (MousePathPoint a : MOUSE_PATH_POINTS) {
            if (lastPoint != null) {
                g.setColor(a.getColor());
                g.drawLine(a.x, a.y, lastPoint.x, lastPoint.y);
            }
            lastPoint = a;
        }

        if (System.currentTimeMillis() - Mouse.getPressTime() < 500)
            g.setColor(new Color(168, 9, 9));
        else
            g.setColor(new Color(32, 95, 0));
        g.fillOval(location.x - 5, location.y - 5, 10, 10);
        g.setColor(Color.BLACK);
        g.drawLine(location.x - 7, location.y, location.x + 7, location.y);
        g.drawLine(location.x, location.y - 7, location.x, location.y + 7);
        g.drawOval(location.x - 5, location.y - 5, 10, 10);
    }