some good points in here...