partially implement devise