Change structure and solution [and correct memory leak]