#include <ctime>
#include <chrono>
#include <iostream>

using namespace std;
using namespace std::chrono;

int main()
{
   char time_zone[] = "TZ=CET-1CEST";
   putenv( time_zone );
   tzset();
	
   struct tm tm_gm; // 59, 29, 16, 12, 2, 119, 2, 70, 1 => 16:29:59 12.03.2019 (ok)
   struct tm tm_lc; // 59, 29, 17, 12, 2, 119, 2, 70, 1 => 17:29:59 12.03.2019 (ok)

   time_t time_now   = time( nullptr );                                // 1552404599
   time_t time_lc    = mktime( localtime_r( &time_now, &tm_lc ) );     // 1552404599
   time_t time_gm    = mktime( gmtime_r( &time_now, &tm_gm ) );        // 1552400999
   time_t chrono_utc = system_clock::to_time_t( system_clock::now() ); // 1552408199

   int diff_lc_chrono = time_lc - chrono_utc; // -3600
   int diff_lc_gm     = time_lc - time_gm;    // 3600
   int diff_chrono_lc = chrono_utc - time_lc; // 3600
   int diff_chrono_gm = chrono_utc - time_gm; // 7200 ???
   
   cout << "diff_lc_chrono: "	<< diff_lc_chrono << "\n"
		<< "diff_lc_gm    : "	<< diff_lc_gm << "\n"   
		<< "diff_chrono_lc: "	<< diff_chrono_lc << "\n"   
		<< "diff_chrono_gm: "	<< diff_chrono_gm;
   
   
}