put return value in Maybe because it may return 0 (ie. Nothing)
minor fixes in ParseDefines