class inheritance setup