more flexibility, IRLS, etc