bug fixed, duplicate call