Refactorization is done. Prepering new version