bms parser written in go