better external class support