Balance + fixes + refactoring