some changes to call less outside