#include <iostream>
using namespace std;
/*bool poh(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4)
{
double Ua = ((x4 - x3) * (y1 - y3) - (y4 - y3) * (x1 - x3)) / ((y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1));
if (Ua >= 0 && Ua <= 1)
{
return true;
}
}*/
double poh(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4)
{
double Ua = ((x4 - x3) * (y1 - y3) - (y4 - y3) * (x1 - x3)) / ((y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1));
cout << x1 << y4;
cout << Ua;
}
int main() {
int a[2][2];
for (int i = 0; i < 2; ++i) {
cin >> a[i][0];
cin >> a[i][1];
}
int b[2][2];
for (int i = 0; i < 2; ++i) {
cin >> b[i][0];
cin >> b[i][1];
}
/*if (poh(a[0][0], a[0][1], a[1][0], a[1][1], b[0][0], b[0][1], b[1][0], b[1][1]) == true){
cout << 1;
}
else {
cout << 0;
}*/
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKLypib29sIHBvaChpbnQgeDEsIGludCB5MSwgaW50IHgyLCBpbnQgeTIsIGludCB4MywgaW50IHkzLCBpbnQgeDQsIGludCB5NCkKewoJZG91YmxlIFVhID0gKCh4NCAtIHgzKSAqICh5MSAtIHkzKSAtICh5NCAtIHkzKSAqICh4MSAtIHgzKSkgLyAoKHk0IC0geTMpICogKHgyIC0geDEpIC0gKHg0IC0geDMpICogKHkyIC0geTEpKTsKCWlmIChVYSA+PSAwICYmIFVhIDw9IDEpCgl7CgkJcmV0dXJuIHRydWU7Cgl9Cn0qLwoKZG91YmxlIHBvaChpbnQgeDEsIGludCB5MSwgaW50IHgyLCBpbnQgeTIsIGludCB4MywgaW50IHkzLCBpbnQgeDQsIGludCB5NCkKewoJZG91YmxlIFVhID0gKCh4NCAtIHgzKSAqICh5MSAtIHkzKSAtICh5NCAtIHkzKSAqICh4MSAtIHgzKSkgLyAoKHk0IC0geTMpICogKHgyIC0geDEpIC0gKHg0IC0geDMpICogKHkyIC0geTEpKTsKCWNvdXQgPDwgeDEgPDwgeTQ7Cgljb3V0IDw8ICBVYTsKfQoKaW50IG1haW4oKSB7CglpbnQgYVsyXVsyXTsKCWZvciAoaW50IGkgPSAwOyBpIDwgMjsgKytpKSB7CgkJY2luID4+IGFbaV1bMF07CgkJY2luID4+IGFbaV1bMV07Cgl9CglpbnQgYlsyXVsyXTsKCWZvciAoaW50IGkgPSAwOyBpIDwgMjsgKytpKSB7CgkJY2luID4+IGJbaV1bMF07CgkJY2luID4+IGJbaV1bMV07Cgl9CgkKCS8qaWYgKHBvaChhWzBdWzBdLCBhWzBdWzFdLCBhWzFdWzBdLCBhWzFdWzFdLCBiWzBdWzBdLCBiWzBdWzFdLCBiWzFdWzBdLCBiWzFdWzFdKSA9PSB0cnVlKXsKCQljb3V0IDw8IDE7Cgl9CgllbHNlIHsKCQljb3V0IDw8IDA7Cgl9Ki8KCQoJCn0=