Problem with accessing Progmem contents, simple example

I am trying to store some data in Progmem to avoid filling up the RAM, I have read some other posts about similar issues, however they all include compile errors, and/or complications not involved with what I am doing. Here is the simplest example that shows my problem, it compiles fine on IDE 1.8.2, but the actual runtime output is bad.

#include <avr/pgmspace.h>

const byte GAUSSPULSE1[] PROGMEM = {1,  1, 2, 6, 22, 75, 150, 200, 150, 75, 22, 6, 2, 1, 1}; // doesn't work

//const byte GAUSSPULSE1[] = {1,  1, 2, 6, 22, 75, 150, 200, 150, 75, 22, 6, 2, 1, 1}; // Works, 
int Count = 0;

int SGP;

void setup() {
   Serial.begin(115200);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }
   Serial.println(F("Testing Progmem"));
   SGP = sizeof(GAUSSPULSE1);
        Serial.println(SGP);
       Serial.println("");

}

void loop() {
  // put your main code here, to run repeatedly:
  if(Count==0){
    
    for(int i = 0; i< SGP; i++){
        Serial.println(GAUSSPULSE1[i]);
    }
  } 
  Count = 1;
}

If I run it as shown above (on an Arduino Nano), it gives the wrong output:

Testing Progmem
15

0
0
135
0
0
184
0
0
1
3
0
184
128
0
0

If I comment out the progmem line, and do is as a normal array stored in RAM, it works fine:

Testing Progmem
15

1
1
2
6
22
75
150
200
150
75
22
6
2
1
1

Any ideas of how to fix this?

Go look at the documentation for PROGMEM
https://www.arduino.cc/en/Reference/PROGMEM

Using PROGMEM is also a two-step procedure. After getting the data into Flash memory, it requires special methods (functions), also defined in the pgmspace.h library, to read the data from program memory back into SRAM, so we can do something useful with it.

Use the correct functions to read PROGMEM.
I'm pretty sure the reference page has instructions

Thanks for the rapid response! The link to that reference is very informative. Seems straightforward now that I have revised my expectations on how this works.

Bah. Too much fiddling with obscure functions. Just install Mikal Hart's library...

http://arduiniana.org/libraries/flash/

Your solution to fiddling with obscure functions is to...fiddle with an obscure library? Are the pgm_read_whatever functions really that hard? Either way it's something new that has to be learned.

Jiggy-Ninja:
Either way it’s something new that has to be learned.

Only the declaration varies from normal array access.