\def\layersep{1.5cm}
\def\outsep{0.7cm}
\def\dy{1.25}

\begin{tikzpicture}[draw=black!50, node distance=\layersep, font=\sffamily]
    \tikzstyle{node}=[circle,fill=black,minimum size=2pt,inner sep=0pt]
    \tikzstyle{block}=[draw=black,rectangle,fill=none,minimum size=1cm, inner sep=0pt]
    \tikzstyle{annot} = []

	\node[node] (xc) at (0, -\dy cm) {};
    \node[block, text width = 2cm, align= center] (DSP) at (2*\layersep, -\dy cm) {LTI System};
	\coordinate (yc) at (4*\layersep, -\dy cm) {};
		
    \path[->, >=stealth, shorten >= 0pt] (xc) edge (DSP);
    \path[->, >=stealth, shorten >= 0pt] (DSP) edge (yc);
    
	\onslide<1|handout:1>{
		\node[block, draw=none, above = 0.5mm of xc, scale=0.5] (tx_signal1) {\resizebox{7cm}{!}{\input{figs/impulse2.tex}}};
		\node[below = 0.5mm of xc] {$\delta[n]$};	
		\node[block, draw=none, above = 0.5mm of yc, scale=0.5] (rx_signal1) {\resizebox{7cm}{!}{\input{figs/impulse_response.tex}}};
		\node[below = 0.5mm of yc] {$h[n]$};
	}

	\onslide<2|handout:2>{
		\node[block, draw=none, above = 0.5mm of xc, scale=0.5] (tx_signal2) {\resizebox{7cm}{!}{\input{figs/impulse_shifted.tex}}};
		\node[below = 0.5mm of xc] {$\delta[n-1]$};	
		\node[block, draw=none, above = 0.5mm of yc, scale=0.5] (rx_signal2) {\resizebox{7cm}{!}{\input{figs/impulse_response_shifted.tex}}};
		\node[below = 0.5mm of yc] {$h[n-1]$};
		\node[below = 2mm of DSP.south] {\textbf{from time invariance}};
	}
	\onslide<3-|handout:3->{
		\node[block, draw=none, above = 0.5mm of xc, scale=0.5] (tx_signal2) {\resizebox{7cm}{!}{\input{figs/two_impulses.tex}}};
		\node[below = 0.5mm of xc] {$\delta[n] - 0.5\delta[n-1]$};	
		\node[block, draw=none, above = 0.5mm of yc, scale=0.5] (rx_signal2) {\resizebox{7cm}{!}{\input{figs/impulse_response_of_two_impulses.tex}}};
		\node[below = 0.5mm of yc] {$h[n] - 0.5h[n-1]$};
	}
	\onslide<3|handout:3>{\node[below = 2mm of DSP.south] {\textbf{from linearity}};}

\end{tikzpicture}