#include < ... -> CTO >


#define CALL_TYPE   __fastcall -> 기획이사


class COMPANY

{

public:

    COMPANY()

    {

        ... -> CEO, 기획이사

    }


    COMPANY( /* initialize list */ -> 투자자 )

    {

    }


    virtual auto CALL_TYPE some_requirements( ... ) = 0; -> CTO


    template< class... Ts >

    auto CALL_TYPE some_functions( Ts... args )

    {

        ... -> CTO, 개발이사

    }


    template<>

    auto CALL_TYPE some_function< ... >( ... )

    {

        ... -> 개발이사

    }


    ~COMPANY()

    {

        ... -> CFO

    }

};


void garbage_collector( void* param ) /* thread handler */

{

    ... -> CFO

}


enum class HOLYDAYS

{

    annual = 0,

    workshop,

};


int main()

{

    COMPANY com; -> CEO

    new thread( ... garbage_collector ... );

    while( 24시간 )

    {

        com.work< LEVEL::hell >();

        ::Sleep( HOLYDAYS::... );

    }

    return  0; // 쓸데없이 의미심장

}