public static function getTerminalSizes()
    {
        if (self::getOperatingSystem()->equals(OS::WINDOWS) || self::getOperatingSystem()->equals(OS::UNKNOWN)) {
            return ['width' => 100, 'height' => 100];
        }
        preg_match_all("/rows.([0-9]+);.columns.([0-9]+);/", strtolower(exec('stty -a |grep columns')), $output);
        if (sizeof($output) == 3) {
            return [
                "height" => @$output[1][0],
                "width"  => @$output[2][0]
            ];
        } else {
            return [
                "width"  => 100,
                "height" => 100
            ];
        }
    }