remove circular dependency
remove segfault due to memset init