modified for my ide.