prototype with plugins