# 28. [Literate Haskell], 256 bytes <!-- language-all: lang-hs --> <pre><code>.	|+xx<<<"a"<<<xx+|	. 		 >	g x=elem '<'x&&e%x==e >	e=tail(show 0)	 >	('<':a)%('>':b)=a%b >	a%('<':b)=('<':a)%b >	a%('>':b)='<':e >	a%(x:b)=a%b{->Hi, Retina!Henry Jams?-} >	a@(_:_)%_=a >	a%b=e 	 a	 b	 C	 d	 e	 f	 g	 h	 i	 j	 k	 l	 m	 n	 o	 ppppppppp	 q	3~ </code></pre> [Try it online!][TIO-jf1h0pcm] [Literate Haskell]: https://www.haskell.org/onlinereport/literate.html [TIO-jf1h0pcm]: https://tio.run/##5ZDBToNAEIbP/zzFtgkFUiEm3giLJl4aj74AGXQKaxdaC4lrrL46LlSewjlMMt/8/2RmGu4PYm1izSBnHmQcU1y2zuV5vua1z85tL0hJAVSgVk6LlVaFeeg2Gwmc1uK56IGNjfrm@KFu40kZeUXGcRCFRZhVseag8pSDmft66S/0qpqgXIn7c30lxc7cqGcZTMernXTnT/XEbX@ffE/Ch6jMyjgoNc@2yq@jQAyqQI@gV5CA9qAa1IAM6A10AFlQC@pAR9BpCdA77n5G8pNaNp023fSTl2G@K63jf/@aXw "Literate Haskell – Try It Online" [Test Driver] [Test Driver]:https://tio.run/##5RjbVtvK9XnmK6YTjCXAYyQwFxuJQJJzwllp6EpoVrsI0LE9sgWypEgy2MRknaf2fMJ5aD@ir119ah77Fc2PuHtGNpZvB3LiPtUspJm998zs@96aKo@b/X6NJ8QmYRQ0It5iSSfBWNSaASn4hC4ZlACS1@thqFAjjKkwSeRyv9H2eOQm3QmKDUVxKTxvErOpMHHCa1eiPoErKVzYTZqBvzGB27rHTSC2FeKm6cahiOIREn50aUch3yioFJa5fthOWOIGxB7CR1vtKupIJK7PJ1AfjfU7KhkPWi0xhTMU7pJf87gWuWEyRWAqgusp@IaCA@NeaRzntsIgSkjcjSuOBYSlu0oYuX6iORrAWJzUXZ9Fgtc1XdfpSGvm1BFb6ogPbR4loJ@EO84UybYiARUmIg55bVq@nbvMEZOW@WimqlHWnjrfTEVs8vgK8MxrxmPY9OhG4DmzNWfu3GFsoxZ3fQvEFxGvJVrcDG5YQ8/sa6qNMT6wlrQBm6QYhElRua98rq6ysEsKhXbiwNNxPTFybbKXcQwdH/7aTe7H@kgEo0wodh1yCtIcUGJZ8D6k5KxCkqbwMVGENORxTLHwYjGEONz1KHbcGTKNBV7xZCwMgb2puHxIvF@x3xQsI7G5EIkVZ8ql0idx2qN8MkOih@jvxxlON76Z03T@Ns1mxI2JHyTE9eV6Uo/caxExip8Q0VHR/Pr4@YuL3x2cvLRosR1HRc@tFv2gLi5aQb3tiViSynlqlkGOHL7ZZZxNm2MqSFU2keB6w4DNZtRUWZIyA5xHeq@o0jcratqL5UQ9pI8N8/pDrjpv0XCY4Xnrf8DzsMrcDyQb2dLzEP@P2SA7zcizvbiwiopV1y@@STNuWgUHB6mKaRMSwJ5RpjymcDsLP5y924giw/vOt9siBbxRtXluoLUCP0gVnRbxYkrPREdkyvqM0Ina1e4g6mSBT58sqo7q/QzLPmrR/ThbE9YXlHh@uO84ZquEkKN8HWrktSBJQG4gWYtMlyKJg6guIols8StB3AS0qBTyzlKCXQ8SgpnKeV2UhVj6rGplSKFNCs6UXr5m7fWkahZTPWRHJbe/76zIrMicRXQ/yTK1qELxh50tAkSiVYUCNbBY4JOTo2P6uBRujnL4IC5la0jnEo5EKC2@D8n2lGMTaeTJhvOhzPi1m02CsrJuLS5Vjpri4o16TbTJ8zqRR6wbB2T5X0yqf8iXZvcDcxqCyY7A2FlQSBzXEpme5mT0X24Fza/tBc1sMzgZIuaisvKBFzbbtau5Mj1a8KjtD75vst9PMyvRHMLMLCvpwhrf18eHx6@@TdDBTr89/G4@Sdo@vzp4/b0l/Ivfvx25xejLMTOUNXj8k3Kekzx@@Tggq8zFROu0Cc05xh7/Opa5f87aLJPfHK79PkO91U5nb2@PcgrPTme1hxgmCMH3eYN0LOGJFsnv5TvLyyLXsSwBcGElsIH6YCfruqTUgKLM9ZyWt/Plqm7xXBWgPKfgMB/ih9CUSgJFCukMVn0s2C/dNZJ2eL95KfyoS37grXi/cCcJn2oX5Qs9d2FxtawK7BCEOcJVhJ8hXEdYIOwg3EC4ibCL8CXCVwh7CLcQ9hEOEA6HP4Q/oI1P/edrztrTNQMvOTYdjCk@7jOmM4aZftRimDJqsT7DX378mxB9tnH6JC@uhX@Gn5YdjPNsQ0hQ3sytW2d54pCgnfTZumHi0X0PTu95POHLmx7CiLrrgffgtoesrJB1ViI5Ykgzrut9Ju7e85jdvjU25K1Xqc94tVYXTqPpXl55LT8IP0CdbF/fdLq32CbUpvA8kk514HkYunrjy08/mXJw3E4ASjYwMFWwbysdSx76yvVFrOmVrvVO1JIgcm@F1k6cnZPgyE90raNXuN/VGpEIPY0WbLrW0YGpgr3@p4yB@swYMxg5Ip4LLed3kfBrTVJ@jumbd55XqbNmmft1EsEjaIHwbceB/jSQGxjLy1ps2TSzDRy3vByf7p5ZVp7m4VjD87zv//juJaXh55/HCD//899/Ziv/@jv@/PP5@hJQVmjFYPj9xHaVpQtrz66A94fplRvpFovFml1aXo7AlhHEhviwdFHps5Ojk1cvCETDE/gnL17BHPygzhOO3TJzXAhHs7RmrK3juMziBPZqEJozS6fn7/0zipMRcEwzEG4jzGFXjOCs4QVV7hHZSGP5KEt7QwCG7bjpkSV3OIhxjcPpcY37Dub1OoB21kgOuo0RaUqRROBoA5LNAUncrpIl05Az3sGXt6Q7XOWkq5RanIlVl62QwFbd8pA4@QVi4ZcxfJCBnxlgZ80wViilK4ah1X0ONhmziLzIpVSXdB5vVeucxGW6D9nMJ7E0OEt/YIPBCDaANeBu/DSz0RkA908LhrmpsZ7N9f0zvLkr/bK3n/7RVToY9SY5kPthIhMIAnUjqXT5J6cKRjBgcUqlIJIUxsM47LOtChW8YO@Dr@zbBS5oZQuyxZjV56WAscteFoeem2j0vU913Ta3Vg0dP/ZHe/JH8SYz@5Kj3Cow1KOC9oCl1ZzkaExsyEsbm6Wt7Z1dPDGce8SXH/@aycSQBf/zj7/04TBj9VnB7oEhESWkZxeerYKRVOWQbkwsMrzbJdASJwCWLxIDQpUOrdYU0FBpnsxEYHUdKFKQRaSPaar2JLwqEfACcBK88NstsovR1/xlmIfJSBkYfepLORCq5CX31KBSonwFQQnMI3yLcBfhDsI3CF8j3EZZTWZ3zVcqOEE4RjiSVUWWmZaqOleqArmqGjVUZRKqStVUxfJRsXy@Zm7b5@fnPcvr@j5eQf6n//ua/F8 **Satisfies** 2. The first character is a `.`. 3. It contains an `e`. 4. Its length is even. 5. Its length is a perfect square. 6. It contains an `a`. 7. It contains a `>` character. 8. Contains the exact string `->`. 9. Contains the exact string `Hi, Retina!`. 10. The sum of the first two Unicode code points is a multiple of 5. 11. The 10-th character is a `"`. 12. The last non-empty line does not have any duplicate characters. 13. The first line is a palindrome of length > 5. 14. The first line is exactly 21 characters long (not including newline). 15. It contains a `?`. 16. It contains a `|`. 17. Contains a `+`. 18. It is at least 28 lines long. 19. The following characters are used five times in total: `!"#$.[\]` and the codepoint of the second character is less than 60. 20. Contains `Henry Jams?` as a continuous substring. 21. The last character is `~`. 22. It contains a `C` 23. Each line contains a tab character. 24. The ninth line contains at least 22 characters, excluding the newline. 25. The tab character can't be the first character on a line 26. The third-to-last character is a tab. 27. There are at least 28 lines, and they are all distinct. 28. **There must be a `>` in the code and angle braces must be balanced** <hr> **For future answers:** - The first line is a palindrome matching `.␣␣␣␣␣␣␣␣"␣"␣␣␣␣␣␣␣␣.` (you are free to fill in the ␣s). - The second character is one of `',16;`, or a tab, or one of `\x04\x0e\x13\x18\x1d`. - Its length is an even perfect square. - There are at least 28 lines, and all lines are distinct. - The ninth line must have at least 22 characters (excluding the newline). - The last line does not have any duplicate characters. - Contains the exact strings `->`, `Hi, Retina!`, and `Henry Jams?`. - It contains `|`, `+` and `C`. - Each line contains at least one tab character, but it can't be the first character on a line. - `!".` are banned except where necessary: - Only `!` in `Hi, Retina!` and the two `.` and two `"` in the first line are allowed. - `#$[\]` may not appear in the program. - The program ends with: `tab`, *(whatever)*, `~`. - **Angle braces must be balanced**