Some structural refactory