implemented GC marking and handle procedures