bug fixed (maybe completed)