added fraction support