fixed circular dependnecies