/*
C++ ???????????????????????????????????¬??????
??????AOJ-ITP1??????????????????
*/
#define _USE_MATH_DEFINES

#include <iostream> // ?¨??????\??????
#include <fstream>  // ??????????????\??????
#include <string>   // ???????????¢???
#include <vector>   // ???????????????
#include <cmath>    // ??°??????
#include <iomanip>  // stream???????????¢???
#include <algorithm>// max??¢??°??????

using std::cin;
using std::cout;
using std::endl;
using std::string;
using std::vector;        // ????´???°????????????????????????
using std::fixed;         // ???????????????????¨???????????????????????????????
using std::setprecision;  // ?????°????°???°?????\???????????°????????????????????¨????????\???

double dUnitVec(double v1, double v2) {
	return v2 - v1;
}
// ?????¨??§??????????????§????????????????????°???????????°???????????????
int main() {
	double x1, y1, x2, y2, x3, y3, xp, yp;

	while (cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3 >> xp >> yp)
	{
		// 1???????????????????±???????
		// 1-2
		double UnitX1 = x2 - x1;
		double UnitY1 = y2 - y1;

		double UnitX1P = xp - x1;
		double UnitY1P = yp - y1;


		// 2-3
		double UnitX2 = x3 - x2;
		double UnitY2 = y3 - y2;

		double UnitX2P = xp - x2;
		double UnitY2P = yp - y2;

		// 3-1
		double UnitX3 = x1 - x3;
		double UnitY3 = y1 - y3;

		double UnitX3P = xp - x3;
		double UnitY3P = yp - y3;

		// ??????
		double CP1 = UnitX1 * UnitY1P - UnitY1 * UnitX1P;
		double CP2 = UnitX2 * UnitY2P - UnitY2 * UnitX2P;
		double CP3 = UnitX3 * UnitY3P - UnitY3 * UnitX3P;

		// ?????????????????????????¬????????????´???????????????????¢??????????
		if ((CP1 > 0 && CP2 > 0 && CP3 > 0) || (CP1 < 0 && CP2 < 0 && CP3 < 0))
		{
			cout << "YES" << endl;
		}
		else
		{
			cout << "NO" << endl;
		}
	}

	return 0;
}