Add singular extend, fix extend*