initial detail implementation