working base struct