add logical structure