import std.stdio;
import std.conv, std.array, std.algorithm, std.string;
import std.math, std.random, std.range, std.datetime;
import std.bigint;
import std.container;
string read(){ static string[] ss; while(!ss.length) ss = readln.chomp.split; string res = ss[0]; ss.popFront; return res; }

// [t, t] -> (t - 1) * 2
// [t + 2, t - 1] -> t * 2 - 1

// (k: odd)  t = (k + 1) / 2, n = 2, as = [t + 2, t - 1]
// (k: even) t = k / 2 + 1, n = 2, as = [t, t]

void main(){
	long k = read.to!long;
	
	long n = 2;
	long[] as;
	if(k % 2) as = [(k + 1) / 2 + 2, (k + 1) / 2 - 1];
	else as = [k / 2 + 1, k / 2 + 1];
	
	n.writeln;
	as.map!(to!string).join(" ").writeln;
	}

