restucturing + new content on java gc