C++ 为什么重载>>后调用的时候一加endl就报错

问题:C++ 为什么重载>>后调用的时候一加endl就报错
代码:

#include<iostream>
using namespace std;
class  Coord{
    private:
        int x,y;
    public:
         Coord(int a=0,int b=0)
        {x=a;y=b;}
        friend istream &operator>>(istream &in,Coord &ob);

};

istream &operator>>(istream &input,Coord &ob)//重载>>
{   
    input>>ob.x;//在这一加endl就报错
    input>>ob.y;
    return input;
}
int main()
{    
    Coord a1(1,1),a2(2,2);
    cin>>a1;//在这一加endl;也报错
    return 0;
}

std::cout << std::endl; endl表示换行。

cin>>a1; 后面加endl是骚什么操作?