added double and fraction capability