 #include <sstream>
 #include <iomanip>
 
-#define PROGRAM_VERSION "1.0"
+#define PROGRAM_VERSION "1.1"
 
 #define REMOVE_ALL_ATTRIBUTES "\e[m"
 #define RED_TEXT "\e[91m"

    std::cout << "-h,   --help                Print usage information and exit." << std::endl;
    std::cout << "<no arguments>              Show a summary of GPUs connected to the system." << std::endl;
    std::cout << "-a                          Display extra info." << std::endl;
}

void parseParameters(
    const std::vector<std::string> &argvString,
    bool &isPrintOptionalInfoOfDevice,
    bool &isPrintHelpInfo
) {
    const int argc = argvString.size();
    // the first args is name of file.

    return deviceInfoArray;
}

void printDeviceInfo(
    const std::vector<DeviceInfo> &deviceInfo,
    std::string &driverVersionString,
    bool isPrintOptionalInfoOfDevice,
    bool isPrintPlainOutput
) {
    if (isPrintPlainOutput) {
        std::cout << "Driver version: " << driverVersionString << std::endl;
    } else {
        std::cout << "Driver version: " << getBoldText(driverVersionString) << std::endl;
    }
    for (int i = 0; i < deviceInfo.size(); i++) {
        std::string deviceNumber = "Device " + intToString(i);
        if (isPrintPlainOutput) {
            std::cout << "------------------- " << deviceNumber  <<" -------------------\n";
            std::cout << "Name: " << deviceInfo[i].name << std::endl;
        } else {
            std::cout << "------------------- " << getBoldText(deviceNumber)  <<" -------------------\n";
            std::cout << "Name: " << getBoldText(deviceInfo[i].name) << std::endl;
        }

        std::cout << "Memory usage: ";
        std::cout << std::setw(5) << deviceInfo[i].usedMemory << "MiB" << " / " << std::setw(5) << deviceInfo[i].totalMemory << "MiB" << std::endl;
        if (isPrintPlainOutput) {
            std::cout << "Temperature: " << deviceInfo[i].temp << "C" << std::endl;
        } else {
            std::cout << "Temperature: " << getTemperatureAsColorString(deviceInfo[i].temp) << deviceInfo[i].temp << "C" << REMOVE_ALL_ATTRIBUTES << std::endl;
        }
        if (isPrintOptionalInfoOfDevice) {
            std::cout << "PCI bus ID: " << deviceInfo[i].pciBusID << std::endl;
            std::cout << "UUID: " << deviceInfo[i].uuid << std::endl;
