See spreadsheet for details