2nd commit, current Go engine, only knows basic rule