fixed use __call