Total rewrite -v2