<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Singleton]]></title><description><![CDATA[<p>Hey,<br />
ich versuche zurzeit eine Singleton Klasse zu basteln. Allerdings kriege ich beim Beenden des Programms immer einenen Laufzeitfehler: <strong>Programm muss beendet werden blablabla...</strong></p>
<pre><code class="language-cpp">#include &lt;SFML/Graphics.hpp&gt;
#include &lt;string&gt;
#include &lt;map&gt;

typedef std::map&lt;const std::string, sf::Image&gt; ImageHolder;

class ImageManager {
	private:
		ImageHolder images;

	private:
		ImageManager() {
			;
		}

		ImageManager(const ImageManager&amp;);

	public:
		~ImageManager() {
			/*
				Crash. Warum?
			*/
		}

	public:
		sf::Image&amp; loadImage(const std::string&amp; fileName) {
			ImageHolder::iterator it = images.find(fileName);

			if (it != images.end()) {
				std::cout &lt;&lt; &quot;Found picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;
				return ((*it).second);
			}

			std::cout &lt;&lt; &quot;Didn't find picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;

			sf::Image tempImage;
			tempImage.LoadFromFile(fileName);
			images[fileName] = tempImage;

			return images[fileName];
		}

	public:
		static ImageManager&amp; get() {
			static ImageManager instance;
			return instance;
		}
};
</code></pre>
<p>Hat jemand eine Idee woran das liegen könnte? Ich verstehe irgendwie das Problem nicht. Wäre über Hilfe sehr dankbar.</p>
<p>Viele Grüße,<br />
PleaseHelpMe</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/208264/singleton</link><generator>RSS for Node</generator><lastBuildDate>Sun, 11 Oct 2026 19:17:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/208264.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 16 Mar 2008 21:12:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 21:12:47 GMT]]></title><description><![CDATA[<p>Hey,<br />
ich versuche zurzeit eine Singleton Klasse zu basteln. Allerdings kriege ich beim Beenden des Programms immer einenen Laufzeitfehler: <strong>Programm muss beendet werden blablabla...</strong></p>
<pre><code class="language-cpp">#include &lt;SFML/Graphics.hpp&gt;
#include &lt;string&gt;
#include &lt;map&gt;

typedef std::map&lt;const std::string, sf::Image&gt; ImageHolder;

class ImageManager {
	private:
		ImageHolder images;

	private:
		ImageManager() {
			;
		}

		ImageManager(const ImageManager&amp;);

	public:
		~ImageManager() {
			/*
				Crash. Warum?
			*/
		}

	public:
		sf::Image&amp; loadImage(const std::string&amp; fileName) {
			ImageHolder::iterator it = images.find(fileName);

			if (it != images.end()) {
				std::cout &lt;&lt; &quot;Found picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;
				return ((*it).second);
			}

			std::cout &lt;&lt; &quot;Didn't find picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;

			sf::Image tempImage;
			tempImage.LoadFromFile(fileName);
			images[fileName] = tempImage;

			return images[fileName];
		}

	public:
		static ImageManager&amp; get() {
			static ImageManager instance;
			return instance;
		}
};
</code></pre>
<p>Hat jemand eine Idee woran das liegen könnte? Ich verstehe irgendwie das Problem nicht. Wäre über Hilfe sehr dankbar.</p>
<p>Viele Grüße,<br />
PleaseHelpMe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475508</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475508</guid><dc:creator><![CDATA[PleaseHelpMe]]></dc:creator><pubDate>Sun, 16 Mar 2008 21:12:47 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 22:25:38 GMT]]></title><description><![CDATA[<p>PleaseHelpMe schrieb:</p>
<blockquote>
<p>Hey,<br />
ich versuche zurzeit eine Singleton Klasse zu basteln. Allerdings kriege ich beim Beenden des Programms immer einenen Laufzeitfehler: <strong>Programm muss beendet werden blablabla...</strong><br />
...<br />
Hat jemand eine Idee woran das liegen könnte? Ich verstehe irgendwie das Problem nicht.</p>
</blockquote>
<p>Bedingt dadurch das es wohl nur einen Member gibt, tippe ich mal darauf das etwas bei dessen freigabe schief läuft. Ganz davon abgesehen sehe ich hier kein Singleton. Bei einem Singleton wäre die öffentliche Schnittstelle komplett static, und diese würden über das get() zugreifen (nicht etwa die, die das Singleton verwenden). Alles andere wäre private (bei mir auch das get).</p>
<p>1. Müssen die sf::Image vielleicht noch irgendwie speziell freigegeben/entladen werden?<br />
2. Dies verwirrt mich gerade, aber ich kann mir eigentlich als Key kein &quot;const&quot; vorstellen, da die STL doch sonst immer mit Kopien etc. arbeitet. Kann natürlich dennoch funktionieren, hätte es aber nicht gedacht das dies funktionieren würde.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475536</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Sun, 16 Mar 2008 22:25:38 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 22:34:32 GMT]]></title><description><![CDATA[<p>asc schrieb:</p>
<blockquote>
<p>PleaseHelpMe schrieb:</p>
<blockquote>
<p>Hey,<br />
ich versuche zurzeit eine Singleton Klasse zu basteln. Allerdings kriege ich beim Beenden des Programms immer einenen Laufzeitfehler: <strong>Programm muss beendet werden blablabla...</strong><br />
...<br />
Hat jemand eine Idee woran das liegen könnte? Ich verstehe irgendwie das Problem nicht.</p>
</blockquote>
<p>Bedingt dadurch das es wohl nur einen Member gibt, tippe ich mal darauf das etwas bei dessen freigabe schief läuft. Ganz davon abgesehen sehe ich hier kein Singleton. Bei einem Singleton wäre die öffentliche Schnittstelle komplett static, und diese würden über das get() zugreifen (nicht etwa die, die das Singleton verwenden). Alles andere wäre private (bei mir auch das get).</p>
<p>1. Müssen die sf::Image vielleicht noch irgendwie speziell freigegeben/entladen werden?<br />
2. Dies verwirrt mich gerade, aber ich kann mir eigentlich als Key kein &quot;const&quot; vorstellen, da die STL doch sonst immer mit Kopien etc. arbeitet. Kann natürlich dennoch funktionieren, hätte es aber nicht gedacht das dies funktionieren würde.</p>
<p>cu André</p>
</blockquote>
<p>Verstehe deinen Beitrag nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Habe den Code nun so geändert:</p>
<pre><code class="language-cpp">#include &lt;SFML/Graphics.hpp&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;map&gt;

typedef std::map&lt;std::string, sf::Image&gt; ImageHolder;

class ImageManager {
	private:
		static ImageHolder images;

	private:
		ImageManager() {
			;
		}

		ImageManager(const ImageManager&amp;);

	public:
		~ImageManager() {
			/*
				Crash. Warum?
			*/
		}

	public:
		static sf::Image&amp; loadImage(const std::string&amp; fileName) {
			ImageHolder::iterator it = images.find(fileName);

			if (it != images.end()) {
				std::cout &lt;&lt; &quot;Found picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;
				return ((*it).second);
			}

			std::cout &lt;&lt; &quot;Didn't find picture &quot; &lt;&lt; fileName &lt;&lt; std::endl;

			sf::Image tempImage;
			tempImage.LoadFromFile(fileName);
			images[fileName] = tempImage;

			return images[fileName];
		}

	public:
		static ImageManager&amp; get() {
			static ImageManager instance;
			return instance;
		}
};

ImageHolder ImageManager::images;
</code></pre>
<p>Der Fehler ist geblieben...</p>
<p>Schonmal Danke,<br />
PleaseHelpMe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475540</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475540</guid><dc:creator><![CDATA[PleaseHelpMe]]></dc:creator><pubDate>Sun, 16 Mar 2008 22:34:32 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 22:48:13 GMT]]></title><description><![CDATA[<p>PleaseHelpMe schrieb:</p>
<blockquote>
<p>Verstehe deinen Beitrag nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>1. Ein typisches Singleton lebt davon das nur eine Instanz existiert. Daher sollte die Schnittstelle auch auf eine Instanz ausgelegt sein, und gleichzeitig nicht unnöig verkompliziert werden.</p>
<pre><code class="language-cpp">class SingletonA
{
  private:
    // Automatische generierung Kopierkonstruktor/Zuweisungsoperator
    // unterbinden...
    SingletonA(const SingletonA&amp;);
    SingletonA&amp; operator=(const SingletonA&amp;);

    int xyz;

    SingletonA()
    : xyz(1)
    {}
    ~SingletonA()
    {}

    static SingletonA&amp; get()
    {
      static SingletonA instance;
      return instance;
    }

  public:
    static foo()
    {
      get().xyz = 3;
    }
};
</code></pre>
<p>Sprich: Nach außen hin kenne ich Singletons als statische Klasse (nur statische Methoden sind öffentlich, die get()-Methode nicht). Dies ist auch einfacher, wieso solltest du die Instanz abfragen müssen um von einer einmaligen instanz die Methoden aufzurufen. Dann lieber eine statische Methode direkt zugreifen, die interne Verwaltung wird dabei einfach &quot;verborgen&quot;, ein extra Aufruf von get ist außerhalb nicht nötig.</p>
<p>2. Wenn dein Destruktor knallt muss es ja bei der Freigabe des Objektes knallen. Zum Ende des Destruktors werden die Member, bei dir nur eine Map, destruiert. Daher würde ich zuerst mal schauen ob irgenein Fehler mit der map als solches existiert. Ich kenne diese SFML-Bibliothek nicht, daher könnte ich mir vorstellen, das es irgendwo mit dem Destruktor der Images zu tun hat. Manche Ressourcen können (wenn die Bibliothek nicht dafür ausgelegt ist) nicht einfach so destruiert werden, und es könnte vorher noch ein Aufruf wie z.B. xxx.Destroy() oder ähnliches nötig werden.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475542</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Sun, 16 Mar 2008 22:48:13 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 23:01:38 GMT]]></title><description><![CDATA[<p>@PleaseHelpMe: Schonmal mit dem Debugger durchgegangen? Wenn ja, was sagt er?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475543</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sun, 16 Mar 2008 23:01:38 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Sun, 16 Mar 2008 23:06:19 GMT]]></title><description><![CDATA[<p>Danke für deine Antwort <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Also hier wäre die besagte Klasse sf::Image zu finden:</p>
<p><a href="http://www.sfml-dev.org/documentation/classsf_1_1Image.htm" rel="nofollow">http://www.sfml-dev.org/documentation/classsf_1_1Image.htm</a></p>
<p>Ich finde dort jedoch keine Möglichkeit noch irgendetwas freizugeben...</p>
<p>Wie soll ich also nun vorgehen?</p>
<p><strong><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/13210">@Badestrand</a>:</strong><br />
Es liegt definitiv am Dekonstruktor der Klasse Sprite(s. Oben).</p>
<p>Ansonsten sagt er: Unbehandelte Ausnahme bei 0x004afb3b....<br />
Zugriffsverletzung beim Lesen an Position 0x00000004.</p>
<p>Dabei offenbart sich noch folgendes:</p>
<pre><code class="language-cpp">// TEMPLATE FUNCTION _Destroy
template&lt;class _Ty&gt; inline
	void _Destroy(_Ty _FARQ *_Ptr)
	{	// destroy object at _Ptr
	_DESTRUCTOR(_Ty, _Ptr);
	}
</code></pre>
<p>Hilft euch das weiter?</p>
<p>Danke,<br />
PleaseHelpMe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475545</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475545</guid><dc:creator><![CDATA[PleaseHelpMe]]></dc:creator><pubDate>Sun, 16 Mar 2008 23:06:19 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 00:46:53 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;SFML/Image.hpp&gt; // brauchst doch nur sf::Image?!
#include &lt;string&gt;
#include &lt;map&gt;

class ImageManager 
{
    typedef std::map&lt;std::string, sf::Image&gt; imagemap_t;
    ImageHolder imagemap_t;

private:
    ImageManager() {}
    ImageManager(const ImageManager&amp;);

public:
    sf::Image&amp; getImage(std::string const &amp; fileName) 
    {
        const imagemap_t::iterator it(images.find(fileName));
        if (it != images.end()) return it-&gt;second;

        imagemap_t::iterator it (images.insert(std::make_pair(fileName, sf::Image())).first);
        it-&gt;second.LoadFromFile(fileName);
        return it-&gt;second;
    }

public:
    inline static ImageManager&amp; instance() 
    {
        static ImageManager instance;
        return instance;
    }
};

// ImageManager.instance().getImage(&quot;test.png&quot;);
/* oder wenn du den mehrmals hintereinander brauchst (Referenz):
ImageManager&amp; imageManager(ImageManager.instance());
imageManager.getImage(&quot;test01.png&quot;);
imageManager.getImage(&quot;test02.png&quot;);
*/
</code></pre>
<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475561</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475561</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 17 Mar 2008 00:46:53 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 11:51:49 GMT]]></title><description><![CDATA[<p>@ (D)Evil :</p>
<p>Dein Code erzeugt den gleichen Fehler. Ich habe es nun so gemacht, jedoch kann ich den Speicher nicht mehr freigeben:</p>
<pre><code class="language-cpp">class ImageManager
{
    typedef std::map&lt;std::string, sf::Image*&gt; imagemap_t;
    imagemap_t images;

private:
    ImageManager() {}
    ImageManager(const ImageManager&amp;);
	~ImageManager() {
		for (imagemap_t::iterator it = images.begin(); it != images.end(); it++) {
			delete (*it).second; // Ohne diese Zeile läuft es...
		}
	}

public:
    sf::Image&amp; getImage(std::string const &amp; fileName)
    {
        const imagemap_t::iterator it(images.find(fileName));
        if (it != images.end()) return *it-&gt;second;

        imagemap_t::iterator insertIt (images.insert(std::make_pair(fileName, new sf::Image())).first);
        (*insertIt-&gt;second).LoadFromFile(fileName);
        return *insertIt-&gt;second;
    }

public:
    inline static ImageManager&amp; instance()
    {
        static ImageManager instance;
        return instance;
    }
};
</code></pre>
<p>Ich finde das ziemlich unschön und ich habe bedenken, dass ich Speicherleaks bekomme. Andererseits scheint es nicht möglich zu sein den Speicher wieder freizugeben. Was soll ich tun? Ich bin mit meinem Latein am Ende <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Danke,<br />
PleaseHelpMe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475755</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475755</guid><dc:creator><![CDATA[PleaseHelpMe]]></dc:creator><pubDate>Mon, 17 Mar 2008 11:51:49 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 11:56:46 GMT]]></title><description><![CDATA[<p>Solange in dem Destruktor des zu löschenden Objekts eh nichts sinnvolles mehr abläuft (Was in Dateien schreiben, Datenbank updaten, etc.) wird der Speicher doch automatisch bei Beendigung des Programms (vom System) freigegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475761</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475761</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Mon, 17 Mar 2008 11:56:46 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 12:49:41 GMT]]></title><description><![CDATA[<p>Was ne beschissene Aussage <a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/17700">@Fellhuhn</a>. Weil irgendwer eh deine scheiße ausbaded, macht es nix wenn du welche verbockst oder wie?</p>
<p>@PleaseHelpMe: Hmm ... es liegt einfach an dem großen Nachteil von Singletons, (weshalb man dieses design pattern auch nicht nutzen sollte ...) dass nicht festgelegt ist, wann dein ImageManager objekt zerstört wird. Doch wird der Destruktor auf jedenfall nach dem Ende der main-Funktion aufgerufen. Also konkret:<br />
sf::Image basiert auf sf::VideoResource. Diese ruft im Destruktor auf (vgl. <a href="http://www.sfml-dev.org/documentation/VideoResource_8cpp-source.htm" rel="nofollow">http://www.sfml-dev.org/documentation/VideoResource_8cpp-source.htm</a>):</p>
<pre><code class="language-cpp">priv::GraphicsDevice::GetInstance().RemoveVideoResource(this);
</code></pre>
<p>.<br />
Dein priv::GraphicsDevice::GetInstance() objekt könnte aber bereits zerstört worden sein(die Wahrscheinlichkeit liegt bei 99.9%).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475819</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475819</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 17 Mar 2008 12:49:41 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 13:22:49 GMT]]></title><description><![CDATA[<p><a href="http://www.sfml-dev.org/documentation/classsf_1_1VideoResource.htm#dad15f792682bf766a2f199a3fad3c1d" rel="nofollow">http://www.sfml-dev.org/documentation/classsf_1_1VideoResource.htm#dad15f792682bf766a2f199a3fad3c1d</a></p>
<p>Sieht so aus, als ob die Lib schon selber eine liste an resourcen führt, und evtl. zerstört. Bevor du das mit deinem Singelton machst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475850</guid><dc:creator><![CDATA[phlox81]]></dc:creator><pubDate>Mon, 17 Mar 2008 13:22:49 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 14:26:14 GMT]]></title><description><![CDATA[<p>(D)Evil schrieb:</p>
<blockquote>
<p>Was ne beschissene Aussage <a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/17700">@Fellhuhn</a>. Weil irgendwer eh deine scheiße ausbaded, macht es nix wenn du welche verbockst oder wie?</p>
</blockquote>
<p>Und wo ist der Unterschied zwischen</p>
<p>a) Programm sagt dem System &quot;Speicher wird nicht mehr benötigt&quot; und beendet sich<br />
und<br />
b) Programm beendet sich und System gibt den Speicher frei</p>
<p>?</p>
<p>Solange in den Destruktoren keine Aktionen durchgeführt werden, ist es egal. b) dürfte sogar schneller sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475900</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475900</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Mon, 17 Mar 2008 14:26:14 GMT</pubDate></item><item><title><![CDATA[Reply to Singleton on Mon, 17 Mar 2008 15:09:23 GMT]]></title><description><![CDATA[<p>Vielleicht löse ich mich einfach vom Singleton Konzept. Wobei ich dachte das es als Singleton sinnvoller wäre, da ich so nicht immer das Objekt weiterreichen muss etc.</p>
<p>Der Sinn hinter dieser Klasse soll ja sein das sofern ein Bild schon geladen wurde es nicht nochmal erneut sondern das schon geladene benutzt wird um Ressourcen zu sparen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Hättet ihr evtl. noch ein paar Ideen wie ich es ohne Singleton am Saubersten lösen kann? Würde mir sehr weiterhelfen.</p>
<p>Vielen Dank,</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1475938</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1475938</guid><dc:creator><![CDATA[PleaseHelpMe]]></dc:creator><pubDate>Mon, 17 Mar 2008 15:09:23 GMT</pubDate></item></channel></rss>