gold extends gains, up $23.30 to $1,258.70, as dollar sinks on swiss move