always use ng-show to keep the logic clear