Some good ideas in here.