derive stub
closes #570