#pragma once

double sqrt(double);
double pow(double, double);
double modf(double, double*);
