### Compilation failed:

error: 5: invalid swizzle mask 'xyra'
float4 xyra() { return v.xyra; }
                         ^^^^
error: 6: invalid swizzle mask 'zxtq'
float4 zxtq() { return v.zxtq; }
                         ^^^^
error: 7: invalid swizzle mask 'wwRB'
float4 wwRB() { return v.wwRB; }
                         ^^^^
error: 9: invalid swizzle mask 'rgxy'
float4 rgxy() { return v.rgxy; }
                         ^^^^
error: 10: invalid swizzle mask 'bast'
float4 bast() { return v.bast; }
                         ^^^^
error: 11: invalid swizzle mask 'gbLT'
float4 gbLT() { return v.gbLT; }
                         ^^^^
error: 13: invalid swizzle mask 'sxyz'
float4 sxyz() { return v.sxyz; }
                         ^^^^
error: 14: invalid swizzle mask 'tpbb'
float4 tpbb() { return v.tpbb; }
                         ^^^^
error: 15: invalid swizzle mask 'qsTR'
float4 qsTR() { return v.qsTR; }
                         ^^^^
error: 17: invalid swizzle mask 'LTxy'
float4 LTxy() { return v.LTxy; }
                         ^^^^
error: 18: invalid swizzle mask 'TRba'
float4 TRba() { return v.TRba; }
                         ^^^^
error: 19: invalid swizzle mask 'RBst'
float4 RBst() { return v.RBst; }
                         ^^^^
error: 21: invalid swizzle mask 'xrsL'
float4 xrsL() { return v.xrsL; }
                         ^^^^
error: 22: invalid swizzle mask 'ygtT'
float4 ygtT() { return v.ygtT; }
                         ^^^^
error: 23: invalid swizzle mask 'zbpR'
float4 zbpR() { return v.zbpR; }
                         ^^^^
error: 24: invalid swizzle mask 'waqB'
float4 waqB() { return v.waqB; }
                         ^^^^
16 errors
