http://docs.adacore.com/spark2014-docs/html/ug/spark_2014.html#subprogram-contracts
http://docs.adacore.com/spark2014-docs/html/ug/spark_2014.html#subprogram-contracts