top down analysis