Updated forge and rewrote accordingly