// if the error terminate called after throwing an instance of
// 'std::out_of_range' what(): stoi
// is being thrown by stoi use stol
string bin_string = "0101010101010101010101010101010101010101010101010101";
long number = 0;
number = stol(bin_string,0,2); // number = 1501199875790165