garbage collection will happen in an indeterminant order