added some thoughts... still far away from being complete