use double instead of real