ScreenToGUIPoint

Could somebody explain to me how I can convert a screenPoint to a GUIPoint. I’ve tried the GUIUtility.ScreenToGUIPoint but it doesn’t seem to return what I want. Heres the testing code. The guiPoint remains the same as the screenPoint for some reason.

Vector3 viewportPoint = new Vector3(1,1,1);
    Vector3 screenPoint = new Vector3(1,1,1);
    Vector2 guiPoint = new Vector2(0, 0);

    void OnGUI()
    {
        guiPoint = GUIUtility.ScreenToGUIPoint(new Vector2(screenPoint.x, screenPoint.y));
        
        GUILayout.BeginArea(new Rect(0, 0, 200, 200));
        GUILayout.Label("Viewport X: " + viewportPoint.x);
        GUILayout.Label("Viewport Y: " + viewportPoint.y);
        GUILayout.Label("Screen X: " + screenPoint.x);
        GUILayout.Label("Screen Y: " + screenPoint.y);
        GUILayout.Label("Gui X: " + guiPoint.x);
        GUILayout.Label("Gui Y: " + guiPoint.y);
        GUILayout.EndArea();
    }

    void OnMouseOver()
    {
        viewportPoint = transform.parent.camera.ScreenToViewportPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y,0));
        screenPoint = transform.parent.camera.ViewportToScreenPoint(viewportPoint);  
    }
}

guiPoint = screenPoint;
guiPoint.y = Screen.height-guiPoint.y;