adding internal structure