clash: rule-based tunnel in Go