arrange into plugin structure