better defaults, minor optimization