updated templates; rearranged diagram