+added guards