Started rewrite and splitting