further optimization do overall programa