separate takeout and viewer