fix with just xhr?