This more flexible.