module Data.PopCulture.Emoticons where
import Data.Function
(・-・) :: a -> a
(・-・) = id
(・∀・) :: a -> b -> a
(・∀・) = const
(^◇^) :: (b -> c) -> (a -> b) -> a -> c
(^◇^) = (.)
(★ ̄∀ ̄★) :: (a -> b -> c) -> b -> a -> c
(★ ̄∀ ̄★) = flip
(≧∀≦) :: (a -> b) -> a -> b
(≧∀≦) = ($)
(°∇°) :: (b -> b -> c) -> (a -> b) -> a -> a -> c
(°∇°) = on
(´∀`) :: (c -> d) -> (b -> c) -> (a -> b) -> a -> d
(´∀`) f g h x = f (g (h x))
(^∇^) :: (c -> d) -> (a -> b -> c) -> a -> b -> d
(^∇^) f g x y = f (g x y)
(^∀^) :: (a -> c -> d) -> a -> (b -> c) -> b -> d
(^∀^) f x g y = f x (g y)
(・・) :: (d -> e) -> (a -> b -> c -> d) -> a -> b -> c -> e
(・・) f g x y z = f (g x y z)
(^-^*) :: (c -> a -> d) -> (b -> c) -> a -> b -> d
(^-^*) f g x y = f (g y) x
(^∇^**) :: (a -> c -> b -> d) -> a -> b -> c -> d
(^∇^**) f x y z = f x z y
(^∀^**) :: (a -> b -> d -> c -> e) -> a -> b -> c -> d -> e
(^∀^**) f s t u v = f s t v u
(・∇´) :: (a -> b -> d -> e) -> a -> b -> (c -> d) -> c -> e
(・∇´) f x y g z = f x y (g z)
(・∀´) :: (a -> c -> d) -> a -> (b -> c) -> b -> d
(・∀´) f x g y = f x (g y)
(^~^) :: (c -> d -> e) -> (a -> c) -> a -> (b -> d) -> b -> e
(^~^) f g x h z = f (g x) (h z)
(//∇//) :: (a -> d -> e) -> a -> (b -> c -> d) -> b -> c -> e
(//∇//) f x g y z = f x (g y z)
(//・//) :: (e -> f -> g)
-> (a -> b -> e)
-> a -> b
-> (c -> d -> f)
-> c -> d -> g
(//・//) f g s t h u v = f (g s t) (h u v)
(〃∇〃) :: a -> b -> (b -> a -> c) -> c
(〃∇〃) x y f = f y x
(〃▽〃) :: (c -> b -> a -> d) -> a -> b -> c -> d
(〃▽〃) f x y z = f z y x
(〃・〃) :: (a -> d -> c -> b -> e) -> a -> b -> c -> d -> e
(〃・〃) f s t u v = f s v u t
(‐°‐) :: (b -> c -> d) -> (a -> c) -> a -> b -> d
(‐°‐) f g x y = f y (g x)
(°□°) :: (a -> b -> a -> c) -> a -> b -> c
(°□°) f x y = f x y x
(┬──┬) :: (a -> b) -> a -> b
(┬──┬) f x = f x
(・.・) :: (a -> b -> c) -> a -> b -> c
(・.・) f x y = f x y
(・・?) :: (a -> c) -> a -> b -> c
(・・?) f x _y = f x
(・・??) :: (a -> b -> d) -> a -> b -> c -> d
(・・??) f x y _z = f x y
(・・???) :: (a -> b -> b) -> a -> b -> a -> b
(・・???) f x y z = f x (f z y)
(・~・) :: a -> b -> b
(・~・) _x y = y
(--~) :: ((a -> b) -> a) -> (a -> b) -> b
(--~) x y = y (x y)
(╯°□°) :: (b -> c -> d) -> (a -> b) -> (a -> c) -> a -> d
(╯°□°) f g h x = f (g x) (h x)
( ̄^ ̄) :: a -> (a -> b) -> (b -> c) -> c
( ̄^ ̄) x f g = g (f x)
(・﹏・) :: (a -> b) -> (b -> c) -> a -> c
(・﹏・) f g x = g (f x)
(〃´∀`) :: (a -> b) -> a -> (b -> c) -> c
(〃´∀`) f x g = g (f x)
(〃..) :: (b -> c) -> a -> (a -> b) -> c
(〃..) f x g = f (g x)
(..) :: a -> (b -> c) -> (a -> b) -> c
(..) x f g = f (g x)
(。・・。) :: a -> (b -> a -> c) -> b -> c
(。・・。) x f y = f y x
(〃。・・。) :: (b -> c -> a -> d) -> a -> b -> c -> d
(〃。・・。) f x y z = f y z x
(*〃。・・。) :: (a -> c -> d -> b -> e) -> a -> b -> c -> d -> e
(*〃。・・。) f s t u v = f s u v t
(°-°*) :: (a -> b -> c) -> (a -> b) -> a -> c
(°-°*) f g x = f x (g x)
(°-°〃) :: (b -> c -> d) -> (a -> b) -> (a -> c) -> a -> d
(°-°〃) f g h x = f (g x) (h x)
(╥﹏╥) :: a -> (a -> b) -> b
(╥﹏╥) x f = f x
(⋟﹏⋞) :: a -> b -> (a -> b -> c) -> c
(⋟﹏⋞) x y f = f x y
(⋟~⋞) :: (b -> a -> b -> d) -> a -> b -> b -> d
(⋟~⋞) f x y z = f y x z
(╥~╥) :: (a -> c -> b -> c -> e) -> a -> b -> c -> c -> e
(╥~╥) f s t u v = f s v t u
(´・~・) :: (a -> a -> b) -> a -> b
(´・~・) f x = f x x
(・・;) :: a -> (a -> a -> b) -> b
(・・;) x f = f x x
(●・・) :: (a -> b -> b -> c) -> a -> b -> c
(●・・) f x y = f x y y
(◉・・) :: (a -> b -> c -> c -> d) -> a -> b -> c -> d
(◉・・) f x y z = f x y z z