throw error on circular require