change gc heap API and hide sturctures.