x - y swap bug