fix: memory leak, didn't free objects