plugin restructuring