Several bugs found, currently debugging.