declaration/definition
declare #main-output has (binary-mode | text-mode | buffered | unbuffered)
    
 By default, #main-output is written to in text mode: this is the default setting. Additionally, by
        default #main-output is buffered. declare #main-output has allows this behaviour to be changed
        explicitly. Changing both the mode and the buffering is possible, but requires two declarations.
      
 For example:
        
declare #main-output has binary-mode declare #main-output has unbuffered
 This declaration should always be used in preference to the newline declaration for performing
        binary input or output.