             oSound.lastValues.duration = nD;
             hasNew = true;
           }
+
           if (bL > oSound.lastValues.bytesLoaded) {
             oSound.lastValues.bytesLoaded = bL;
             hasNew = true;
           }
+
           if (bT > oSound.lastValues.bytes) {
             oSound.lastValues.bytes = bT;
             hasNew = true;


        }

        if (typeof nP != 'undefined' && hasNew) { // && isPlaying - removed to allow updates while paused, eg. from setPosition() calls

          // oSound.lastValues.position = nP;
          sMethod = baseJSObject + "['" + sounds[i] + "']._whileplaying";

    // -----------------------------------

    public function writeDebug (s:String, bTimestamp: Boolean = false) : Boolean {
      if (!debugEnabled) {
        return false;
      }
      // <d>
      ExternalInterface.call(baseJSController + "['_writeDebug']", "(Flash): " + s, null, bTimestamp);
      // </d>
