titles = {'test 1', 'test 2'};
soph = linspace(0.3, 0.7, 100);
utils_sinc = rand(100, 3, length(cdfs_in)) * 0.5 + 1;
utils_tot = rand(100, 3, length(cdfs_in)) * 0.5 + 1;
figure('Position', [0, 0, 1200, 600]);
T=tiledlayout(1, length(cdfs_in));
t.Layout.TileSpan = [1 1];
t.TileSpacing = 'compact';
plot(soph, utils_sinc(:,1,i))
plot(soph, utils_sinc(:,2,i))
plot(soph, utils_sinc(:,3,i))
ylabel("Mean Utility", 'FontSize', 12);
xlabel("Fraction of Students who are Sophisticated (P_{soph})", 'FontSize', 12);
title("Sincere Students", 'FontWeight', 'normal');
plot(soph, utils_tot(:,1,i))
plot(soph, utils_tot(:,2,i))
plot(soph, utils_tot(:,3,i))
title("All Students", 'FontWeight', 'normal');
xlabel("Fraction of Students who are Sophisticated (P_{soph})", 'FontSize', 12);
ylabel("Mean Utility", 'FontSize', 12);
ax = axes(T, 'Visible', 'off');
hOptimal = plot(ax, NaN, NaN, 'DisplayName', 'Optimal Taiwan Mechanism', 'Color', 'b');
hBoston = plot(ax, NaN, NaN, 'DisplayName', 'Boston Mechanism', 'Color', 'r');
hDeferred = plot(ax, NaN, NaN, 'DisplayName', 'Deferred Acceptance', 'Color', 'y');
lgd = legend([hOptimal, hBoston, hDeferred]);
lgd.Layout.Tile = 'south';