simple main functionality working