first doc struct