move exceptions and make all more faster
organize tests