laid out methods