support singleton-class
benchmark
remove trash
diet code(but performance is not changed)
diet code
diet code
hadndle else-only rule