finished first method needs comments