#include <list>
#include <map>
#include <string>
#include <vector>
typedef std::vector<int> int_vect;
typedef std::vector<std::string> string_vect;
typedef std::list<int> int_list;
typedef std::list<std::string> string_list;
#define intint_map std::map<int, int>
#define strint_map std::map<std::string, int>
#define intstr_map std::map<int, std::string>
#define strstr_map std::map<std::string, std::string>
struct foo
{
int a;
int b;
int c;
int d;
int e;
int f;
int g;
int h;
int i;
int j;
int k;
int l;
int m;
int n;
int o;
int p;
int q;
int r;
foo(int X) :
a(X),
b(X+1),
c(X+3),
d(X+5),
e(X+7),
f(X+9),
g(X+11),
h(X+13),
i(X+15),
j(X+17),
k(X+19),
l(X+21),
m(X+23),
n(X+25),
o(X+27),
p(X+29),
q(X+31),
r(X+33) {}
};
struct wrapint
{
int x;
wrapint(int X) : x(X) {}
};
int main()
{
foo f00_1(0);
foo *f00_ptr = new foo(12);
f00_1.a++;
wrapint test_cast('A' +
256*'B' +
256*256*'C'+
256*256*256*'D');
int_vect numbers;
numbers.push_back(1);
numbers.push_back(12);
numbers.push_back(123);
numbers.push_back(1234);
numbers.push_back(12345);
numbers.push_back(123456);
numbers.push_back(1234567);
numbers.clear();
numbers.push_back(7);
string_vect strings;
strings.push_back(std::string("goofy"));
strings.push_back(std::string("is"));
strings.push_back(std::string("smart"));
strings.push_back(std::string("!!!"));
strings.clear();
int_list numbers_list;
numbers_list.push_back(0x12345678);
numbers_list.push_back(0x11223344);
numbers_list.push_back(0xBEEFFEED);
numbers_list.push_back(0x00ABBA00);
numbers_list.push_back(0x0ABCDEF0);
numbers_list.push_back(0x0CAB0CAB);
numbers_list.clear();
numbers_list.push_back(1);
numbers_list.push_back(2);
numbers_list.push_back(3);
numbers_list.push_back(4);
string_list text_list;
text_list.push_back(std::string("goofy"));
text_list.push_back(std::string("is"));
text_list.push_back(std::string("smart"));
text_list.push_back(std::string("!!!"));
intint_map ii;
ii[0] = 0;
ii[1] = 1;
ii[2] = 0;
ii[3] = 1;
ii[4] = 0;
ii[5] = 1;
ii[6] = 0;
ii[7] = 1;
ii[8] = 0;
ii.clear();
strint_map si;
si["zero"] = 0;
si["one"] = 1;
si["two"] = 2;
si["three"] = 3;
si["four"] = 4;
si.clear();
intstr_map is;
is[0] = "goofy";
is[1] = "is";
is[2] = "smart";
is[3] = "!!!";
is.clear();
strstr_map ss;
ss["ciao"] = "hello";
ss["casa"] = "house";
ss["gatto"] = "cat";
ss["a Mac.."] = "..is always a Mac!";
ss.clear();
return 0;
}