WGQEJYGCJTGLKYTOBJNBPIOBFLQMO7XDVRSK7VFNG6GKE7FGAELAC
ZQLW6BX54QFHXQHJTOQ7KW3TBNE6VZZGTD3FPUOLVULYRS66NGLQC
RUIGRXTKM6BQ532W7KU3RKDXMRNRGDVGMA2ODMX2D2F3PCLF3GAQC
XNPLRKJ4ZK442XNJ5BC7TO3DKXGXFSOSGBZBPW5HZZDHY3IVD6FAC
4KXMGXQ6PTWVMINMKRCQE7DIJXUYMO7SVNR6AQ243QULY7IZLUYAC
6D4TYQRJMN6QEKASHJ3ZN3E7TXF5IEQ3G4ATTZZ5AZC56VXMWFZAC
YE3EAD3XYKXRHEJN4VLBVBQM2EISKFHAESPOZ6S4QMLA6YZEVDQQC
7SFN5S4CUZZL523G6RHETVEJCJUIMXH2YPDTRKQWCGZTDYNWW4LQC
DNU6TYDJ7M3S62NXVOSK5TR4Q77SQRAS4T2VFLZALFIR2JARYS7QC
XHAO2M2V7NLRMTG4WWRBOYMD6ACPYALUWGL7ST3PKU5LEH555C2AC
NYMIFK2WBHU4G34QF4GZP63ATL2EQC6PLAQLWZMUTPDGDPQUEKVQC
proofComposition Nothing (Some g) _ = Refl
proofComposition (Some f) Nothing _ = Refl
proofComposition (Some f) (Some g) Nothing = Refl
proofComposition (Some f) (Some g) (Some x) = Refl
proofComposition Nothing (Some _) _ = Refl
proofComposition (Some _) Nothing _ = Refl
proofComposition (Some _) (Some _) z = case z of
Nothing => Refl
(Some _) => Refl