avoids unnecessary call