improvements in structure class