func IndexOf(s string, needle string, start int) int {
	l := len(s)
	if needle == "" {
		if start < 0 {
			return 0
		} else if start < l {
			return start
		} else {
			return l
		}
	}
	if start < 0 || start > l-1 {
		return -1
	}
	pos := strings.Index(s[start:], needle)
	if pos == -1 {
		return -1
	}
	return start + pos
}
func IndexOf(s string, needle string, start int) int {
	l := len(s)
	if needle == "" {
		if start < 0 {
			return 0
		} else if start < l {
			return start
		} else {
			return l
		}
	}
	if start < 0 || start > l-1 {
		return -1
	}
	pos := strings.Index(s[start:], needle)
	if pos == -1 {
		return -1
	}
	return start + pos
}
func IndexOf ( s string , needle string , start int ) int { l := len ( s ) if needle == " " { if start < 0 { return 0 } else if start < l { return start } else { return l } } if start < 0 || start > l - 1 { return - 1 } pos := strings . Index ( s [ start : ] , needle ) if pos == - 1 { return - 1 } return start + pos }
// IndexOf finds the index of needle in s starting from start.
IndexOf finds the index of needle in s starting from start .