have a bug.....need to fix!!!!!!!!!!!!!!!!!!!!!!!