Main structure implementation