all required methods done. woo hoo