output file name && couple type checking holes