rgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggrgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggrgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggrgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggrgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggvggggggggggggggggggggggggggggggggggggggrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrttttttttttttttttttttttttttttttttttttttttttttttttttttrrrrrrrrrrrrrtttttttttttttttttttttttttttttttttttttttttttttttttt