non need for external module