added main() execution ways