Updated based on @duncanphillips feedback