add bigfloat functionality