added main with compiling by defines