fixed issue with circular header dependency