Function definitions must precede the firt calls to them