tweaked protocol