$VAR1 = [
          {
            'FILE' => 'test.idl',
            'NAME' => 'drazen_svc',
            'PROPERTIES' => {
                              'version' => '1.0',
                              'uuid' => 'E75074E2-6EEC-4f08-9454-8D806C221490',
                              'endpoint' => '"ncacn_np:[\\\\pipe\\\\drazen_svc]","ncacn_ip_tcp:[1337]"',
                              'pointer_default' => 'unique'
                            },
            'DATA' => [
                        {
                          'FILE' => 'test.idl',
                          'VALUE' => 'NULL',
                          'NAME' => 'PI',
                          'POINTERS' => 1,
                          'TYPE' => 'CONST',
                          'DTYPE' => 'int',
                          'LINE' => 9
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'tptp1_struct',
                          'BASEFILE' => 'test',
                          'TYPE' => 'STRUCT',
                          'LINE' => 22,
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed small',
                                            'LINE' => 11
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'usm',
                                            'POINTERS' => 0,
                                            'TYPE' => 'unsigned small',
                                            'LINE' => 12
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sh',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed short',
                                            'LINE' => 13
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ush',
                                            'POINTERS' => 0,
                                            'TYPE' => 'unsigned short',
                                            'LINE' => 14
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'lo',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed long',
                                            'LINE' => 15
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ulo',
                                            'POINTERS' => 0,
                                            'TYPE' => 'unsigned long',
                                            'LINE' => 16
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'hy',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed hyper',
                                            'LINE' => 17
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'uhy',
                                            'POINTERS' => 0,
                                            'TYPE' => 'unsigned hyper',
                                            'LINE' => 18
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'bo',
                                            'POINTERS' => 0,
                                            'TYPE' => 'boolean',
                                            'LINE' => 19
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ch',
                                            'POINTERS' => 0,
                                            'TYPE' => 'char',
                                            'LINE' => 20
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'by',
                                            'POINTERS' => 0,
                                            'TYPE' => 'byte',
                                            'LINE' => 21
                                          }
                                        ]
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'TestPrimTypesPacking1',
                          'RETURN_TYPE' => 'void',
                          'POINTERS' => 0,
                          'TYPE' => 'FUNCTION',
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 25
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'usm',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'unsigned small',
                                            'LINE' => 26
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sh',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed short',
                                            'LINE' => 27
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ush',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'unsigned short',
                                            'LINE' => 28
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'lo',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed long',
                                            'LINE' => 29
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ulo',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'unsigned long',
                                            'LINE' => 30
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'hy',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed hyper',
                                            'LINE' => 31
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'uhy',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'unsigned hyper',
                                            'LINE' => 32
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'bo',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'boolean',
                                            'LINE' => 33
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ch',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'char',
                                            'LINE' => 34
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'by',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'byte',
                                            'LINE' => 36
                                          }
                                        ],
                          'LINE' => 36
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'tptp2_struct',
                          'BASEFILE' => 'test',
                          'TYPE' => 'STRUCT',
                          'LINE' => 47,
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed small',
                                            'LINE' => 42
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sh',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed short',
                                            'LINE' => 43
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'lo',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed long',
                                            'LINE' => 44
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm_',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed small',
                                            'LINE' => 45
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'hy',
                                            'POINTERS' => 0,
                                            'TYPE' => 'signed hyper',
                                            'LINE' => 46
                                          }
                                        ]
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'tptp2_struct_t',
                          'BASEFILE' => 'test',
                          'DATA' => {
                                      'FILE' => 'test.idl',
                                      'TYPE' => 'STRUCT',
                                      'LINE' => 55,
                                      'ELEMENTS' => [
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'sm',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed small',
                                                        'LINE' => 50
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'sh',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed short',
                                                        'LINE' => 51
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'lo',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed long',
                                                        'LINE' => 52
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'sm_',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed small',
                                                        'LINE' => 53
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'hy',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed hyper',
                                                        'LINE' => 54
                                                      }
                                                    ]
                                    },
                          'TYPE' => 'TYPEDEF',
                          'LINE' => 55
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'TestPrimTypesPacking2',
                          'RETURN_TYPE' => 'tptp2_struct_t',
                          'POINTERS' => 0,
                          'TYPE' => 'FUNCTION',
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 57
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sh',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed short',
                                            'LINE' => 58
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'lo',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed long',
                                            'LINE' => 59
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm_',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 60
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'hy',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed hyper',
                                            'LINE' => 61
                                          }
                                        ],
                          'LINE' => 61
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'tptp3_enum_t',
                          'BASEFILE' => 'test',
                          'DATA' => {
                                      'FILE' => 'test.idl',
                                      'NAME' => 'tptp3_enum_t',
                                      'TYPE' => 'ENUM',
                                      'LINE' => 70,
                                      'ELEMENTS' => [
                                                      'ONE=0',
                                                      'TWO',
                                                      'THREE',
                                                      'FOUR',
                                                      'FIVE'
                                                    ]
                                    },
                          'TYPE' => 'TYPEDEF',
                          'LINE' => 70
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'TestPrimTypesPacking3',
                          'RETURN_TYPE' => 'tptp3_enum_t',
                          'POINTERS' => 0,
                          'TYPE' => 'FUNCTION',
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'e1',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 'tptp3_enum_t',
                                                        'TYPE' => 'ENUM',
                                                        'LINE' => 76
                                                      },
                                            'LINE' => 76
                                          }
                                        ],
                          'LINE' => 76
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'threes_t',
                          'BASEFILE' => 'test',
                          'DATA' => {
                                      'FILE' => 'test.idl',
                                      'TYPE' => 'STRUCT',
                                      'LINE' => 82,
                                      'ELEMENTS' => [
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 's1',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed small',
                                                        'LINE' => 79
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 's2',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed small',
                                                        'LINE' => 80
                                                      },
                                                      {
                                                        'FILE' => 'test.idl',
                                                        'NAME' => 's3',
                                                        'POINTERS' => 0,
                                                        'TYPE' => 'signed small',
                                                        'LINE' => 81
                                                      }
                                                    ]
                                    },
                          'TYPE' => 'TYPEDEF',
                          'LINE' => 82
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'TestUniFixedArray',
                          'RETURN_TYPE' => 'void',
                          'POINTERS' => 0,
                          'TYPE' => 'FUNCTION',
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s1',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 87
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_longs',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed long',
                                            'LINE' => 88,
                                            'ARRAY_LEN' => [
                                                             '16'
                                                           ]
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s2',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 89
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_shorts',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed short',
                                            'LINE' => 90,
                                            'ARRAY_LEN' => [
                                                             '16'
                                                           ]
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s3',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 91
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_threes',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'threes_t',
                                            'LINE' => 93,
                                            'ARRAY_LEN' => [
                                                             '16'
                                                           ]
                                          }
                                        ],
                          'LINE' => 93
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'TestUniConfArray',
                          'RETURN_TYPE' => 'void',
                          'POINTERS' => 0,
                          'TYPE' => 'FUNCTION',
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s1',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 99
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_longs',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1',
                                                              'size_is' => '_s1'
                                                            },
                                            'TYPE' => 'signed long',
                                            'LINE' => 100,
                                            'ARRAY_LEN' => [
                                                             '*'
                                                           ]
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s2',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 101
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_shorts',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1',
                                                              'size_is' => '_s2'
                                                            },
                                            'TYPE' => 'signed short',
                                            'LINE' => 102,
                                            'ARRAY_LEN' => [
                                                             '*'
                                                           ]
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_s3',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1'
                                                            },
                                            'TYPE' => 'signed small',
                                            'LINE' => 103
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => '_threes',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'in' => '1',
                                                              'size_is' => '_s3'
                                                            },
                                            'TYPE' => 'threes_t',
                                            'LINE' => 105,
                                            'ARRAY_LEN' => [
                                                             '*'
                                                           ]
                                          }
                                        ],
                          'LINE' => 105
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'e1',
                          'BASEFILE' => 'test',
                          'TYPE' => 'ENUM',
                          'LINE' => 113,
                          'ELEMENTS' => [
                                          'A=23',
                                          'B',
                                          'C',
                                          'D',
                                          'E'
                                        ]
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'e2',
                          'BASEFILE' => 'test',
                          'TYPE' => 'ENUM',
                          'LINE' => 120,
                          'ELEMENTS' => [
                                          'A',
                                          'B',
                                          'C=20',
                                          'D',
                                          'E'
                                        ]
                        },
                        {
                          'FILE' => 'test.idl',
                          'NAME' => 'conf_struct',
                          'BASEFILE' => 'test',
                          'TYPE' => 'STRUCT',
                          'LINE' => 129,
                          'ELEMENTS' => [
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm',
                                            'POINTERS' => 1,
                                            'TYPE' => 'signed small',
                                            'LINE' => 123
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm_',
                                            'POINTERS' => 2,
                                            'TYPE' => 'signed small',
                                            'LINE' => 124
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'sm__',
                                            'POINTERS' => 3,
                                            'TYPE' => 'signed small',
                                            'LINE' => 125
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'ppptrs_hypers',
                                            'POINTERS' => 3,
                                            'PROPERTIES' => {
                                                              'length_is' => '10,10',
                                                              'size_is' => '*sm,**sm_,***sm__'
                                                            },
                                            'TYPE' => 'signed hyper',
                                            'LINE' => 126,
                                            'ARRAY_LEN' => [
                                                             '*',
                                                             '*',
                                                             '*'
                                                           ]
                                          },
                                          {
                                            'FILE' => 'test.idl',
                                            'NAME' => 'shorts',
                                            'POINTERS' => 0,
                                            'PROPERTIES' => {
                                                              'length_is' => '*sm,**sm_,***sm__',
                                                              'size_is' => '*sm,**sm_,***sm__'
                                                            },
                                            'TYPE' => 'signed short',
                                            'LINE' => 127,
                                            'ARRAY_LEN' => [
                                                             '*',
                                                             '*',
                                                             '*'
                                                           ]
                                          }
                                        ]
                        }
                      ],
            'TYPE' => 'INTERFACE',
            'LINE' => 132
          }
        ];