some architecture corrections + correcting some mistakes