fixed plugin interface