(GX) arg passing changes (UNTESTED)