self instead of window