Added floating, may be some bugs