better external interaction