make gc more standalone