blog of how does global variables call constructor