#include <stdio.h>
#include <stdlib.h>

typedef union {
    int Value;
    struct SubStruct1 {
        int Value;
    } SubStruct1;

    struct SubStruct2 {
        int Value;
    } SubStruct2;

    struct SubStruct3 {
        int Value;
    } SubStruct3;
} T;

void print( T *t )
{
    printf("%d\n",t->Value);
}

int main()
{
    T t;
    t.SubStruct1.Value = 1;
    print(&t);
    t.SubStruct2.Value = 2;
    print(&t);
    t.SubStruct3.Value = 3;
    print(&t);

    return 0;
}

