path is optional