formater have a bugs, need rework