Updated GC design and pseudo-code