added plugin support