almost finish
done fixing bugs