go fmt-compatible output
Better use of defer Close()
use_single -> useSingle
not_sized -> useArray + better flag doc