add detail function