added garbarge collection