extension and setup