Update from lunaryorn/blog@f21646855412b7a1779494c44cf49de25a4fcbfe