==== tests/cases/compiler/giant.ts (216 errors) ====
    
    /*
        Prefixes
        p -> public
        r -> private
        i -> import
        e -> export
        a -> ambient
        t -> static
        s -> set
        g -> get
    
        MAX DEPTH 3 LEVELS
    */
    var V;
    function F() { };
    class C {
        constructor () { }
        public pV;
        private rV;
        public pF() { }
        private rF() { }
        public pgF() { }
        public get pgF()
                   ~~~
!!! giant.ts(24,16): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(23,5)
                   ~~~
!!! giant.ts(24,16): error TS2126: Getters must return a value.
        public psF(param:any) { }
        ~~~~~~
!!! giant.ts(25,5): error TS1005: '{' expected.
        public set psF(param:any)
                   ~~~
!!! giant.ts(26,16): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(25,5)
        private rgF() { }
        ~~~~~~~
!!! giant.ts(27,5): error TS1005: '{' expected.
        private get rgF()
                    ~~~
!!! giant.ts(28,17): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(27,5)
                    ~~~
!!! giant.ts(28,17): error TS2126: Getters must return a value.
        private rsF(param:any) { }
        ~~~~~~~
!!! giant.ts(29,5): error TS1005: '{' expected.
        private set rsF(param:any)
                    ~~~
!!! giant.ts(30,17): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(29,5)
        static tV;
        ~~~~~~
!!! giant.ts(31,5): error TS1005: '{' expected.
        static tF() { }
        static tsF(param:any) { }
        static set tsF(param:any)
                   ~~~
!!! giant.ts(34,16): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(33,5)
        static tgF() { }
        ~~~~~~
!!! giant.ts(35,5): error TS1005: '{' expected.
        static get tgF()
                   ~~~
!!! giant.ts(36,16): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(35,5)
                   ~~~
!!! giant.ts(36,16): error TS2126: Getters must return a value.
    }
    ~
!!! giant.ts(37,1): error TS1005: '{' expected.
    interface I {
    ~~~~~~~~~
!!! giant.ts(38,1): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
        //Call Signature
        ();
        (): number;
        ~~~~~~~~~~
!!! giant.ts(41,5): error TS2175: Overloads cannot differ only by return type.
        (p);
        (p1: string);
        (p2?: string);
        (...p3: any[]);
        (p4: string, p5?: string);
        (p6: string, ...p7: any[]);
        //(p8?: string, ...p9: any[]);
        //(p10:string, p8?: string, ...p9: any[]);
        
        //Construct Signature
        new ();
        new (): number;
        ~~~~~~~~~~~~~~
!!! giant.ts(53,5): error TS2175: Overloads cannot differ only by return type.
        new (p: string);
        new (p2?: string);
        new (...p3: any[]);
        new (p4: string, p5?: string);
        new (p6: string, ...p7: any[]);
    
        //Index Signature
        [p];
        [p1: string];
        [p2: string, p3: number];
                   ~
!!! giant.ts(63,16): error TS1005: ']' expected.
                               ~
!!! giant.ts(63,28): error TS1005: ';' expected.
                                ~
!!! giant.ts(63,29): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
        ~~~~~~~~~~~
!!! giant.ts(63,5): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(62,5)
    
        //Property Signature
        p;
        p1?;
        p2?: string;
        
        //Function Signature
        p3();
        ~~~~
!!! giant.ts(71,5): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(63,18)
        p4? ();
        p5? (): void;
        p6(pa1): void;
        p7(pa1, pa2): void;
        p7? (pa1, pa2): void;
        ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(76,5): error TS2144: Duplicate overload signature for 'p7'.
        ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(76,5): error TS2153: Overload signatures must all be optional or required.
    }
    module M {
        var V;
        function F() { };
        class C {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(88,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(87,9)
                       ~~~
!!! giant.ts(88,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(89,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(90,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(89,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(91,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(92,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(91,9)
                        ~~~
!!! giant.ts(92,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(93,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(94,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(93,9)
            static tV;
            ~~~~~~
!!! giant.ts(95,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(98,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(97,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(99,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(100,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(99,9)
                       ~~~
!!! giant.ts(100,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(101,5): error TS1005: '{' expected.
        interface I {
        ~~~~~~~~~
!!! giant.ts(102,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(105,9): error TS2175: Overloads cannot differ only by return type.
            (p);
            (p1: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(117,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(127,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(127,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(127,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(127,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(126,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(135,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(127,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(140,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(140,9): error TS2153: Overload signatures must all be optional or required.
        }
        module M {
            var V;
            function F() { };
            class C { };
            interface I { };
            module M { };
            export var eV;
            export function eF() { };
            export class eC { };
            export interface eI { };
            export module eM { };
            export declare var eaV;
            export declare function eaF() { };
            export declare class eaC { };
            export declare module eaM { };
        }
        export var eV;
        export function eF() { };
        export class eC {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(167,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(166,9)
                       ~~~
!!! giant.ts(167,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(168,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(169,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(168,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(170,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(171,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(170,9)
                        ~~~
!!! giant.ts(171,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(172,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(173,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(172,9)
            static tV;
            ~~~~~~
!!! giant.ts(174,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(177,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(176,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(178,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(179,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(178,9)
                       ~~~
!!! giant.ts(179,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(180,5): error TS1005: '{' expected.
        export interface eI {
        ~~~~~~
!!! giant.ts(181,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(184,9): error TS2175: Overloads cannot differ only by return type.
            (p);
            (p1: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(196,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(206,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(206,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(206,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(206,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(205,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(214,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(206,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(219,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(219,9): error TS2153: Overload signatures must all be optional or required.
        }
        export module eM {
            var V;
            function F() { };
            class C { };
            interface I { };
            module M { };
            export var eV;
            export function eF() { };
            export class eC { };
            export interface eI { };
            export module eM { };
            export declare var eaV;
            export declare function eaF() { };
            export declare class eaC { };
            export declare module eaM { };
        }
        export declare var eaV;
        export declare function eaF() { };
        export declare class eaC {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(246,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(245,9)
                       ~~~
!!! giant.ts(246,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(247,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(248,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(247,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(249,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(250,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(249,9)
                        ~~~
!!! giant.ts(250,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(251,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(252,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(251,9)
            static tV;
            ~~~~~~
!!! giant.ts(253,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(256,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(255,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(257,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(258,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(257,9)
                       ~~~
!!! giant.ts(258,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(259,5): error TS1005: '{' expected.
        export declare module eaM {
        ~~~~~~
!!! giant.ts(260,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            var V;
            function F() { };
            class C { }
            interface I { }
            module M { }
            export var eV;
            export function eF() { };
            export class eC { }
            export interface eI { }
            export module eM { }
        }
    }
    export var eV;
    export function eF() { };
    export class eC {
        constructor () { }
        public pV;
        private rV;
        public pF() { }
        private rF() { }
        public pgF() { }
        public get pgF()
                   ~~~
!!! giant.ts(282,16): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(281,5)
                   ~~~
!!! giant.ts(282,16): error TS2126: Getters must return a value.
        public psF(param:any) { }
        ~~~~~~
!!! giant.ts(283,5): error TS1005: '{' expected.
        public set psF(param:any)
                   ~~~
!!! giant.ts(284,16): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(283,5)
        private rgF() { }
        ~~~~~~~
!!! giant.ts(285,5): error TS1005: '{' expected.
        private get rgF()
                    ~~~
!!! giant.ts(286,17): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(285,5)
                    ~~~
!!! giant.ts(286,17): error TS2126: Getters must return a value.
        private rsF(param:any) { }
        ~~~~~~~
!!! giant.ts(287,5): error TS1005: '{' expected.
        private set rsF(param:any)
                    ~~~
!!! giant.ts(288,17): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(287,5)
        static tV;
        ~~~~~~
!!! giant.ts(289,5): error TS1005: '{' expected.
        static tF() { }
        static tsF(param:any) { }
        static set tsF(param:any)
                   ~~~
!!! giant.ts(292,16): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(291,5)
        static tgF() { }
        ~~~~~~
!!! giant.ts(293,5): error TS1005: '{' expected.
        static get tgF()
                   ~~~
!!! giant.ts(294,16): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(293,5)
                   ~~~
!!! giant.ts(294,16): error TS2126: Getters must return a value.
    }
    ~
!!! giant.ts(295,1): error TS1005: '{' expected.
    export interface eI {
    ~~~~~~
!!! giant.ts(296,1): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
        //Call Signature
        ();
        (): number;
        ~~~~~~~~~~
!!! giant.ts(299,5): error TS2175: Overloads cannot differ only by return type.
        (p);
        (p1: string);
        (p2?: string);
        (...p3: any[]);
        (p4: string, p5?: string);
        (p6: string, ...p7: any[]);
        //(p8?: string, ...p9: any[]);
        //(p10:string, p8?: string, ...p9: any[]);
        
        //Construct Signature
        new ();
        new (): number;
        ~~~~~~~~~~~~~~
!!! giant.ts(311,5): error TS2175: Overloads cannot differ only by return type.
        new (p: string);
        new (p2?: string);
        new (...p3: any[]);
        new (p4: string, p5?: string);
        new (p6: string, ...p7: any[]);
    
        //Index Signature
        [p];
        [p1: string];
        [p2: string, p3: number];
                   ~
!!! giant.ts(321,16): error TS1005: ']' expected.
                               ~
!!! giant.ts(321,28): error TS1005: ';' expected.
                                ~
!!! giant.ts(321,29): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
        ~~~~~~~~~~~
!!! giant.ts(321,5): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(320,5)
    
        //Property Signature
        p;
        p1?;
        p2?: string;
        
        //Function Signature
        p3();
        ~~~~
!!! giant.ts(329,5): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(321,18)
        p4? ();
        p5? (): void;
        p6(pa1): void;
        p7(pa1, pa2): void;
        p7? (pa1, pa2): void;
        ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(334,5): error TS2144: Duplicate overload signature for 'p7'.
        ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(334,5): error TS2153: Overload signatures must all be optional or required.
    }
    export module eM {
        var V;
        function F() { };
        class C {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(346,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(345,9)
                       ~~~
!!! giant.ts(346,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(347,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(348,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(347,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(349,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(350,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(349,9)
                        ~~~
!!! giant.ts(350,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(351,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(352,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(351,9)
            static tV;
            ~~~~~~
!!! giant.ts(353,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(356,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(355,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(357,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(358,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(357,9)
                       ~~~
!!! giant.ts(358,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(359,5): error TS1005: '{' expected.
        interface I {
        ~~~~~~~~~
!!! giant.ts(360,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(363,9): error TS2175: Overloads cannot differ only by return type.
            (p);
            (p1: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(375,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(385,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(385,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(385,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(385,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(384,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(393,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(385,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(398,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(398,9): error TS2153: Overload signatures must all be optional or required.
        }
        module M {
            var V;
            function F() { };
            class C { };
            interface I { };
            module M { };
            export var eV;
            export function eF() { };
            export class eC { };
            export interface eI { };
            export module eM { };
            export declare var eaV;
            export declare function eaF() { };
            export declare class eaC { };
            export declare module eaM { };
        }
        export var eV;
        export function eF() { };
        export class eC {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(425,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(424,9)
                       ~~~
!!! giant.ts(425,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(426,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(427,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(426,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(428,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(429,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(428,9)
                        ~~~
!!! giant.ts(429,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(430,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(431,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(430,9)
            static tV;
            ~~~~~~
!!! giant.ts(432,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(435,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(434,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(436,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(437,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(436,9)
                       ~~~
!!! giant.ts(437,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(438,5): error TS1005: '{' expected.
        export interface eI {
        ~~~~~~
!!! giant.ts(439,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(442,9): error TS2175: Overloads cannot differ only by return type.
            (p);
            (p1: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(454,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(464,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(464,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(464,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(464,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(463,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(472,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(464,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(477,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(477,9): error TS2153: Overload signatures must all be optional or required.
        }
        export module eM {
            var V;
            function F() { };
            class C { };
            interface I { };
            module M { };
            export var eV;
            export function eF() { };
            export class eC { };
            export interface eI { };
            export module eM { };
            export declare var eaV;
            export declare function eaF() { };
            export declare class eaC { };
            export declare module eaM { };
        }
        export declare var eaV;
        export declare function eaF() { };
        export declare class eaC {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            private rF() { }
            public pgF() { }
            public get pgF()
                       ~~~
!!! giant.ts(504,20): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(503,9)
                       ~~~
!!! giant.ts(504,20): error TS2126: Getters must return a value.
            public psF(param:any) { }
            ~~~~~~
!!! giant.ts(505,9): error TS1005: '{' expected.
            public set psF(param:any)
                       ~~~
!!! giant.ts(506,20): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(505,9)
            private rgF() { }
            ~~~~~~~
!!! giant.ts(507,9): error TS1005: '{' expected.
            private get rgF()
                        ~~~
!!! giant.ts(508,21): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(507,9)
                        ~~~
!!! giant.ts(508,21): error TS2126: Getters must return a value.
            private rsF(param:any) { }
            ~~~~~~~
!!! giant.ts(509,9): error TS1005: '{' expected.
            private set rsF(param:any)
                        ~~~
!!! giant.ts(510,21): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(509,9)
            static tV;
            ~~~~~~
!!! giant.ts(511,9): error TS1005: '{' expected.
            static tF() { }
            static tsF(param:any) { }
            static set tsF(param:any)
                       ~~~
!!! giant.ts(514,20): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(513,9)
            static tgF() { }
            ~~~~~~
!!! giant.ts(515,9): error TS1005: '{' expected.
            static get tgF()
                       ~~~
!!! giant.ts(516,20): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(515,9)
                       ~~~
!!! giant.ts(516,20): error TS2126: Getters must return a value.
        }
        ~
!!! giant.ts(517,5): error TS1005: '{' expected.
        export declare module eaM {
        ~~~~~~
!!! giant.ts(518,5): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
            var V;
            function F() { };
            class C { }
            interface I { }
            module M { }
            export var eV;
            export function eF() { };
            export class eC { }
            export interface eI { }
            export module eM { }
        }
    }
    export declare var eaV;
    export declare function eaF() { };
    export declare class eaC {
        constructor () { }
        public pV;
        private rV;
        public pF() { }
        private rF() { }
        public pgF() { }
        public get pgF()
                   ~~~
!!! giant.ts(540,16): error TS2000: Duplicate identifier 'pgF'. Additional locations:
!!! 	giant.ts(539,5)
                   ~~~
!!! giant.ts(540,16): error TS2126: Getters must return a value.
        public psF(param:any) { }
        ~~~~~~
!!! giant.ts(541,5): error TS1005: '{' expected.
        public set psF(param:any)
                   ~~~
!!! giant.ts(542,16): error TS2000: Duplicate identifier 'psF'. Additional locations:
!!! 	giant.ts(541,5)
        private rgF() { }
        ~~~~~~~
!!! giant.ts(543,5): error TS1005: '{' expected.
        private get rgF()
                    ~~~
!!! giant.ts(544,17): error TS2000: Duplicate identifier 'rgF'. Additional locations:
!!! 	giant.ts(543,5)
                    ~~~
!!! giant.ts(544,17): error TS2126: Getters must return a value.
        private rsF(param:any) { }
        ~~~~~~~
!!! giant.ts(545,5): error TS1005: '{' expected.
        private set rsF(param:any)
                    ~~~
!!! giant.ts(546,17): error TS2000: Duplicate identifier 'rsF'. Additional locations:
!!! 	giant.ts(545,5)
        static tV;
        ~~~~~~
!!! giant.ts(547,5): error TS1005: '{' expected.
        static tF() { }
        static tsF(param:any) { }
        static set tsF(param:any)
                   ~~~
!!! giant.ts(550,16): error TS2000: Duplicate identifier 'tsF'. Additional locations:
!!! 	giant.ts(549,5)
        static tgF() { }
        ~~~~~~
!!! giant.ts(551,5): error TS1005: '{' expected.
        static get tgF()
                   ~~~
!!! giant.ts(552,16): error TS2000: Duplicate identifier 'tgF'. Additional locations:
!!! 	giant.ts(551,5)
                   ~~~
!!! giant.ts(552,16): error TS2126: Getters must return a value.
    }
    ~
!!! giant.ts(553,1): error TS1005: '{' expected.
    export declare module eaM {
    ~~~~~~
!!! giant.ts(554,1): error TS1008: Unexpected token; 'constructor, function, accessor or variable' expected.
        var V;
        function F() { };
        class C {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            static tV;
            static tF() { }
        }
        interface I {
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(568,9): error TS2175: Overloads cannot differ only by return type.
            (p: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(579,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(589,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(589,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(589,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(589,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(588,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(597,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(589,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(602,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(602,9): error TS2153: Overload signatures must all be optional or required.
        }
        module M {
            var V;
            function F() { };
            class C { }
            interface I { }
            module M { }
            export var eV;
            export function eF() { };
            export class eC { }
            export interface eI { }
            export module eM { }
            export declare var eaV
            export declare function eaF() { };
            export declare class eaC { }
            export declare module eaM { }
        }
        export var eV;
        export function eF() { };
        export class eC {
            constructor () { }
            public pV;
            private rV;
            public pF() { }
            static tV
            static tF() { }
        }
        export interface eI {
            //Call Signature
            ();
            (): number;
            ~~~~~~~~~~
!!! giant.ts(633,9): error TS2175: Overloads cannot differ only by return type.
            (p);
            (p1: string);
            (p2?: string);
            (...p3: any[]);
            (p4: string, p5?: string);
            (p6: string, ...p7: any[]);
            //(p8?: string, ...p9: any[]);
            //(p10:string, p8?: string, ...p9: any[]);
        
            //Construct Signature
            new ();
            new (): number;
            ~~~~~~~~~~~~~~
!!! giant.ts(645,9): error TS2175: Overloads cannot differ only by return type.
            new (p: string);
            new (p2?: string);
            new (...p3: any[]);
            new (p4: string, p5?: string);
            new (p6: string, ...p7: any[]);
    
            //Index Signature
            [p];
            [p1: string];
            [p2: string, p3: number];
                       ~
!!! giant.ts(655,20): error TS1005: ']' expected.
                                   ~
!!! giant.ts(655,32): error TS1005: ';' expected.
                                    ~
!!! giant.ts(655,33): error TS1008: Unexpected token; 'call, construct, index, property or function signature' expected.
            ~~~~~~~~~~~
!!! giant.ts(655,9): error TS2232: Duplicate string index signature. Additional locations:
!!! 	giant.ts(654,9)
    
            //Property Signature
            p;
            p1?;
            p2?: string;
        
            //Function Signature
            p3();
            ~~~~
!!! giant.ts(663,9): error TS2000: Duplicate identifier 'p3'. Additional locations:
!!! 	giant.ts(655,22)
            p4? ();
            p5? (): void;
            p6(pa1): void;
            p7(pa1, pa2): void;
            p7? (pa1, pa2): void;
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(668,9): error TS2144: Duplicate overload signature for 'p7'.
            ~~~~~~~~~~~~~~~~~~~~
!!! giant.ts(668,9): error TS2153: Overload signatures must all be optional or required.
        }
        export module eM {
            var V;
            function F() { };
            class C { }
            module M { }
            export var eV;
            export function eF() { };
            export class eC { }
            export interface eI { }
            export module eM { }
        }
    }