version 2 astractClassUsage