<pre>function theNumber prompt,default,format,minLimit,maxLimit  if format is "!" then    ask prompt with default    if the result is "Cancel" then      exit to hypercard    end if  else    repeat      ask prompt with default      if the result is "Cancel" then exit to hypercard      else        put true into valid        repeat with C = 1 to the length of it          if char C of it is not in "0123456789.-" then            answer "Le caractere " & char C of it & " n'est pas valide" with "Ok"            put false into valid            exit repeat          end if        end repeat        if valid is false then next repeat        if minLimit is not empty then          if it < minLimit then            answer "Trop petit, minimum = " & minLimit with "Ok"            next repeat          end if        end if        if maxLimit is not empty then          if it > maxLimit then            answer "Trop grand, maximum = " & maxLimit with "Ok"            next repeat          end if        end if        exit repeat      end if    end repeat    if it is not empty then      set the numberFormat to format      get 1 * it    end if  end if  return itend theNumber</pre>