completed plugin restructuring