improve table struct