Your message dated Wed, 09 Mar 2016 23:20:53 +0000
with message-id <e1adnpr-00055x...@franck.debian.org>
and subject line Bug#803821: fixed in gpac 0.5.2-426-gc5ad4e4+dfsg5-2
has caused the Debian Bug report #803821,
regarding gpac: FTBFS with FFmpeg 2.9
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
803821: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=803821
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: gpac
Version: 0.5.2-426-gc5ad4e4+dfsg5-1
Severity: important
Tags: patch
User: pkg-multimedia-maintain...@lists.alioth.debian.org
Usertags: ffmpeg2.9

Dear Maintainer,

your package fails to build with the upcoming ffmpeg 2.9.
This bug will become release-critical at some point when the
ffmpeg2.9 transition gets closer.

Attached is a patch replacing the deprecated functionality.
It also works with ffmpeg 2.8.
Please apply this patch and forward it upstream, if necessary.

These changes have little regression potential.

Best regards,
Andreas

diff --git a/debian/patches/ffmpeg_2.9.patch b/debian/patches/ffmpeg_2.9.patch
new file mode 100644
index 0000000..693ea39
--- /dev/null
+++ b/debian/patches/ffmpeg_2.9.patch
@@ -0,0 +1,302 @@
+Description: Replace deprecated FFmpeg API
+Author: Andreas Cadhalpun <andreas.cadhal...@googlemail.com>
+Last-Update: <2015-11-02>
+
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/audio_decoder.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/audio_decoder.c
+@@ -205,11 +205,7 @@ int dc_audio_decoder_read(AudioInputFile
+ 			packet.data = NULL;
+ 			packet.size = 0;
+ 
+-#ifndef FF_API_AVFRAME_LAVC
+-			avcodec_get_frame_defaults(audio_input_data->aframe);
+-#else
+ 			av_frame_unref(audio_input_data->aframe);
+-#endif
+ 
+ 			avcodec_decode_audio4(codec_ctx, audio_input_data->aframe, &got_frame, &packet);
+ 
+@@ -240,11 +236,7 @@ int dc_audio_decoder_read(AudioInputFile
+ 		if (packet.stream_index == audio_input_file->astream_idx) {
+ 			/* Set audio frame to default */
+ 
+-#ifndef FF_API_AVFRAME_LAVC
+-			avcodec_get_frame_defaults(audio_input_data->aframe);
+-#else
+ 			av_frame_unref(audio_input_data->aframe);
+-#endif
+ 
+ 			/* Decode audio frame */
+ 			if (avcodec_decode_audio4(codec_ctx, audio_input_data->aframe, &got_frame, &packet) < 0) {
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/audio_encoder.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/audio_encoder.c
+@@ -85,11 +85,7 @@ int dc_audio_encoder_open(AudioOutputFil
+ 
+ 	audio_output_file->frame_bytes = audio_output_file->codec_ctx->frame_size * av_get_bytes_per_sample(DC_AUDIO_SAMPLE_FORMAT) * DC_AUDIO_NUM_CHANNELS;
+ 
+-#ifndef FF_API_AVFRAME_LAVC
+-	avcodec_get_frame_defaults(audio_output_file->aframe);
+-#else
+ 	av_frame_unref(audio_output_file->aframe);
+-#endif
+ 
+ 
+ 	audio_output_file->aframe->nb_samples = audio_output_file->codec_ctx->frame_size;
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/video_decoder.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/video_decoder.c
+@@ -253,11 +253,7 @@ int dc_video_decoder_read(VideoInputFile
+ 			video_data_node->source_number = source_number;
+ 			/* Flush decoder */
+ 			memset(&packet, 0, sizeof(AVPacket));
+-#ifndef FF_API_AVFRAME_LAVC
+-			avcodec_get_frame_defaults(video_data_node->vframe);
+-#else
+ 			av_frame_unref(video_data_node->vframe);
+-#endif
+ 
+ 			avcodec_decode_video2(codec_ctx, video_data_node->vframe, &got_frame, &packet);
+ 			if (got_frame) {
+@@ -292,11 +288,7 @@ int dc_video_decoder_read(VideoInputFile
+ 			video_data_node->source_number = source_number;
+ 
+ 			/* Set video frame to default */
+-#ifndef FF_API_AVFRAME_LAVC
+-			avcodec_get_frame_defaults(video_data_node->vframe);
+-#else
+ 			av_frame_unref(video_data_node->vframe);
+-#endif
+ 
+ 			/* Decode video frame */
+ 			if (avcodec_decode_video2(codec_ctx, video_data_node->vframe, &got_frame, &packet) < 0) {
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/video_encoder.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/video_encoder.c
+@@ -86,7 +86,7 @@ int dc_video_encoder_open(VideoOutputFil
+ 		video_output_file->codec_ctx->time_base.den = video_data_conf->time_base.den;
+ 		video_output_file->codec_ctx->time_base.num = video_data_conf->time_base.num * video_data_conf->time_base.den / video_data_conf->framerate;
+ 	}
+-	video_output_file->codec_ctx->pix_fmt = PIX_FMT_YUV420P;
++	video_output_file->codec_ctx->pix_fmt = AV_PIX_FMT_YUV420P;
+ 	video_output_file->codec_ctx->gop_size = video_data_conf->framerate;
+ 
+ //	video_output_file->codec_ctx->codec_id = video_codec->id;
+@@ -96,7 +96,7 @@ int dc_video_encoder_open(VideoOutputFil
+ //	video_output_file->codec_ctx->height = video_data_conf->height;
+ //	video_output_file->codec_ctx->time_base = (AVRational) {1 ,
+ //				video_output_file->video_data_conf->framerate};
+-//	video_output_file->codec_ctx->codec->pix_fmt = PIX_FMT_YUV420P;
++//	video_output_file->codec_ctx->codec->pix_fmt = AV_PIX_FMT_YUV420P;
+ 	video_output_file->codec_ctx->gop_size = video_data_conf->framerate;
+ //
+ //	av_opt_set(video_output_file->codec_ctx->priv_data, "preset", "ultrafast", 0);
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/video_muxer.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/video_muxer.c
+@@ -636,7 +636,7 @@ int dc_ffmpeg_video_muxer_open(VideoOutp
+ 
+ 	video_stream->codec->time_base = video_codec_ctx->time_base;
+ 
+-	video_stream->codec->pix_fmt = PIX_FMT_YUV420P;
++	video_stream->codec->pix_fmt = AV_PIX_FMT_YUV420P;
+ 	video_stream->codec->gop_size = video_codec_ctx->time_base.den; //video_output_file->video_data_conf->framerate;
+ 
+ 	av_opt_set(video_stream->codec->priv_data, "preset", "ultrafast", 0);
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/applications/dashcast/video_scaler.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/applications/dashcast/video_scaler.c
+@@ -125,7 +125,7 @@ int dc_video_scaler_data_init(VideoInput
+ 	dc_consumer_init(&video_scaled_data->consumer, video_cb_size, name);
+ 
+ 	video_scaled_data->num_producers = max_source;
+-	video_scaled_data->out_pix_fmt = PIX_FMT_YUV420P;
++	video_scaled_data->out_pix_fmt = AV_PIX_FMT_YUV420P;
+ 	GF_SAFE_ALLOC_N(video_scaled_data->vsprop, max_source, VideoScaledProp);
+ 	memset(video_scaled_data->vsprop, 0, max_source * sizeof(VideoScaledProp));
+ 
+@@ -198,7 +198,7 @@ int dc_video_scaler_scale(VideoInputData
+ 		video_scaled_data_node->cropped_frame->width  = video_input_data->vprop[index].width  - video_input_data->vprop[index].crop_x;
+ 		video_scaled_data_node->cropped_frame->height = video_input_data->vprop[index].height - video_input_data->vprop[index].crop_y;
+ #endif
+-		if (av_picture_crop((AVPicture*)video_scaled_data_node->cropped_frame, (AVPicture*)video_data_node->vframe, PIX_FMT_YUV420P, video_input_data->vprop[index].crop_y, video_input_data->vprop[index].crop_x) < 0) {
++		if (av_picture_crop((AVPicture*)video_scaled_data_node->cropped_frame, (AVPicture*)video_data_node->vframe, AV_PIX_FMT_YUV420P, video_input_data->vprop[index].crop_y, video_input_data->vprop[index].crop_x) < 0) {
+ 			GF_LOG(GF_LOG_ERROR, GF_LOG_DASH, ("Video scaler: error while cropping picture.\n"));
+ 			return -1;
+ 		}
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/modules/ffmpeg_in/ffmpeg_decode.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/modules/ffmpeg_in/ffmpeg_decode.c
+@@ -327,11 +327,7 @@ static GF_Err FFDEC_AttachStream(GF_Base
+ 				}
+ 			}
+ 		}
+-#if !defined(FF_API_AVFRAME_LAVC)
+-		*frame = avcodec_alloc_frame();
+-#else
+ 		*frame = av_frame_alloc();
+-#endif
+ 
+ 	}
+ #ifdef HAS_HEVC
+@@ -398,11 +394,7 @@ static GF_Err FFDEC_AttachStream(GF_Base
+ 
+ #if defined(USE_AVCTX3)
+ 
+-#if !defined(FF_API_AVFRAME_LAVC)
+-		ffd->audio_frame = avcodec_alloc_frame();
+-#else
+ 		ffd->audio_frame = av_frame_alloc();
+-#endif
+ 
+ #endif
+ 
+@@ -415,7 +407,7 @@ static GF_Err FFDEC_AttachStream(GF_Base
+ 		case AV_CODEC_ID_GIF:
+ #endif
+ 		case AV_CODEC_ID_RAWVIDEO:
+-			if ((*ctx)->pix_fmt==PIX_FMT_YUV420P) {
++			if ((*ctx)->pix_fmt==AV_PIX_FMT_YUV420P) {
+ 				ffd->pix_fmt = GF_PIXEL_YV12;
+ 			} else {
+ 				ffd->pix_fmt = GF_PIXEL_RGB_24;
+@@ -423,11 +415,7 @@ static GF_Err FFDEC_AttachStream(GF_Base
+ 			break;
+ 
+ 		case AV_CODEC_ID_DVD_SUBTITLE:
+-#if !defined(FF_API_AVFRAME_LAVC)
+-			*frame = avcodec_alloc_frame();
+-#else
+ 			*frame = av_frame_alloc();
+-#endif
+ 
+ #ifdef USE_AVCODEC2
+ 			{
+@@ -856,7 +844,7 @@ redecode:
+ 			*outBufferLength = ffd->out_size;
+ //			assert(inBufferLength==ffd->out_size);
+ 
+-			if (ffd->raw_pix_fmt==PIX_FMT_BGR24) {
++			if (ffd->raw_pix_fmt==AV_PIX_FMT_BGR24) {
+ 				s32 i, j;
+ 				for (j=0; j<ctx->height; j++) {
+ 					u8 *src = (u8 *) inBuffer + j*3*ctx->width;
+@@ -995,7 +983,7 @@ redecode:
+ 
+ 	stride = frame->linesize[0];
+ #ifndef NO_10bit
+-	if ((ctx->pix_fmt == PIX_FMT_YUV420P10LE) && ffd->output_as_8bit && (frame->linesize[0] >= 2*w) )  {
++	if ((ctx->pix_fmt == AV_PIX_FMT_YUV420P10LE) && ffd->output_as_8bit && (frame->linesize[0] >= 2*w) )  {
+ 		ffd->conv_to_8bit = 1;
+ 		stride=w;
+ 	}
+@@ -1004,7 +992,7 @@ redecode:
+ 	/*recompute outsize in case on-the-fly change*/
+ 	if ((w != ctx->width) || (h != ctx->height)
+ 	        || (ffd->direct_output && (stride != ffd->stride))
+-	        || ((ffd->out_pix_fmt==GF_PIXEL_YV12) && (ctx->pix_fmt != PIX_FMT_YUV420P) && !ffd->output_as_8bit )
++	        || ((ffd->out_pix_fmt==GF_PIXEL_YV12) && (ctx->pix_fmt != AV_PIX_FMT_YUV420P) && !ffd->output_as_8bit )
+ 	        //need to realloc the conversion buffer
+ 	        || (ffd->conv_to_8bit && !ffd->conv_buffer && ffd->direct_output)
+ 	   ) {
+@@ -1015,7 +1003,7 @@ redecode:
+ 		}
+ #ifndef NO_10bit
+ 		//this YUV format is handled natively in GPAC
+-		else if ((ctx->pix_fmt == PIX_FMT_YUV420P10LE) && !ffd->output_as_8bit) {
++		else if ((ctx->pix_fmt == AV_PIX_FMT_YUV420P10LE) && !ffd->output_as_8bit) {
+ 			ffd->stride = ffd->direct_output ? frame->linesize[0] : ctx->width*2;
+ 			outsize = ffd->stride * ctx->height * 3 / 2;
+ 			ffd->out_pix_fmt = GF_PIXEL_YV12_10;
+@@ -1161,18 +1149,18 @@ redecode:
+ 	if (ffd->out_pix_fmt==GF_PIXEL_RGB_24) {
+ 		pict.data[0] =  (uint8_t *)outBuffer;
+ 		pict.linesize[0] = 3*ctx->width;
+-		pix_out = PIX_FMT_RGB24;
++		pix_out = AV_PIX_FMT_RGB24;
+ 	} else {
+ 		pict.data[0] =  (uint8_t *)outBuffer;
+ 		pict.data[1] =  (uint8_t *)outBuffer + ffd->stride * ctx->height;
+ 		pict.data[2] =  (uint8_t *)outBuffer + 5 * ffd->stride * ctx->height / 4;
+ 		pict.linesize[0] = ffd->stride;
+ 		pict.linesize[1] = pict.linesize[2] = ffd->stride/2;
+-		pix_out = PIX_FMT_YUV420P;
++		pix_out = AV_PIX_FMT_YUV420P;
+ #ifndef NO_10bit
+ 		//this YUV format is handled natively in GPAC
+-		if (ctx->pix_fmt==PIX_FMT_YUV420P10LE) {
+-			pix_out = PIX_FMT_YUV420P10LE;
++		if (ctx->pix_fmt==AV_PIX_FMT_YUV420P10LE) {
++			pix_out = AV_PIX_FMT_YUV420P10LE;
+ 		}
+ #endif
+ 		if (!mmlevel && frame->interlaced_frame) {
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/modules/redirect_av/ffmpeg_ts_muxer.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/modules/redirect_av/ffmpeg_ts_muxer.c
+@@ -16,7 +16,7 @@
+ 
+ #define STREAM_FRAME_RATE 25 /* 25 images/s */
+ #define STREAM_NB_FRAMES  ((int)(STREAM_DURATION * STREAM_FRAME_RATE))
+-#define STREAM_PIX_FMT PIX_FMT_YUV420P /* default pix_fmt */
++#define STREAM_PIX_FMT AV_PIX_FMT_YUV420P /* default pix_fmt */
+ 
+ #define PACKETS_BUFFER_LEN 1024
+ 
+--- gpac-0.5.2-426-gc5ad4e4+dfsg5.orig/modules/redirect_av/redirect_av.c
++++ gpac-0.5.2-426-gc5ad4e4+dfsg5/modules/redirect_av/redirect_av.c
+@@ -253,7 +253,7 @@ static u32 video_encoding_thread_run(voi
+ 			assert( currentFrameTimeProcessed != avr->frameTime);
+ 			currentFrameTimeProcessed = avr->frameTime;
+ 			{
+-				avpicture_fill ( ( AVPicture * ) avr->RGBpicture, avr->frame, PIX_FMT_RGB24, avr->srcWidth, avr->srcHeight );
++				avpicture_fill ( ( AVPicture * ) avr->RGBpicture, avr->frame, AV_PIX_FMT_RGB24, avr->srcWidth, avr->srcHeight );
+ 				assert( avr->swsContext );
+ 				sws_scale ( avr->swsContext,
+ #ifdef USE_AVCODEC2
+@@ -318,7 +318,7 @@ exit:
+ #define VIDEO_RATE 400000
+ 
+ static Bool start_if_needed(GF_AVRedirect *avr) {
+-	enum PixelFormat pxlFormatForCodec = PIX_FMT_YUV420P;
++	enum AVPixelFormat pxlFormatForCodec = AV_PIX_FMT_YUV420P;
+ 	if (avr->is_open)
+ 		return 0;
+ 	gf_mx_p(avr->frameMutex);
+@@ -367,13 +367,13 @@ static Bool start_if_needed(GF_AVRedirec
+ 		}
+ 
+ 		if (avr->videoCodec->id == CODEC_ID_MJPEG) {
+-			pxlFormatForCodec = PIX_FMT_YUVJ420P;
++			pxlFormatForCodec = AV_PIX_FMT_YUVJ420P;
+ 		}
+ 
+-		avr->RGBpicture = avcodec_alloc_frame();
++		avr->RGBpicture = av_frame_alloc();
+ 		assert ( avr->RGBpicture );
+ 		avr->RGBpicture->data[0] = NULL;
+-		avr->YUVpicture = avcodec_alloc_frame();
++		avr->YUVpicture = av_frame_alloc();
+ 		assert ( avr->YUVpicture );
+ 		{
+ 			u32 sz = sizeof ( uint8_t ) * avpicture_get_size ( pxlFormatForCodec, avr->srcWidth, avr->srcHeight );
+@@ -524,7 +524,7 @@ static void avr_on_video_reconfig ( void
+ 		avr->frame = gf_malloc ( sizeof ( char ) *avr->size );
+ 		avr->srcWidth = width;
+ 		avr->srcHeight = height;
+-		avr->swsContext = sws_getCachedContext ( avr->swsContext, avr->srcWidth, avr->srcHeight, PIX_FMT_RGB24, avr->srcWidth, avr->srcHeight, PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL );
++		avr->swsContext = sws_getCachedContext ( avr->swsContext, avr->srcWidth, avr->srcHeight, AV_PIX_FMT_RGB24, avr->srcWidth, avr->srcHeight, AV_PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL );
+ 		gf_mx_v(avr->frameMutex);
+ 	}
+ }
+@@ -787,7 +787,7 @@ void avr_delete ( GF_BaseInterface *ifce
+ 	avr->videoCodec = NULL;
+ 	if ( avr->YUVpicture )
+ 	{
+-		av_free ( avr->YUVpicture );
++		av_frame_free ( &avr->YUVpicture );
+ 	}
+ 	if ( avr->yuv_data )
+ 		av_free ( avr->yuv_data );
+@@ -795,7 +795,7 @@ void avr_delete ( GF_BaseInterface *ifce
+ 	avr->YUVpicture = NULL;
+ 	if ( avr->RGBpicture )
+ 	{
+-		av_free ( avr->RGBpicture );
++		av_frame_free ( &avr->RGBpicture );
+ 	}
+ 	avr->RGBpicture = NULL;
+ 	if ( avr->swsContext )
diff --git a/debian/patches/series b/debian/patches/series
index e78b360..3073ff3 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,3 +4,4 @@ libav10.patch
 export_gf_isom_set_pixel_aspect_ratio.patch
 dont-err-build-on-uknown-system.patch
 skip-swf-test.patch
+ffmpeg_2.9.patch

--- End Message ---
--- Begin Message ---
Source: gpac
Source-Version: 0.5.2-426-gc5ad4e4+dfsg5-2

We believe that the bug you reported is fixed in the latest version of
gpac, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 803...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Sebastian Ramacher <sramac...@debian.org> (supplier of updated gpac package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Wed, 09 Mar 2016 23:21:23 +0100
Source: gpac
Binary: gpac gpac-modules-base libgpac4 libgpac-dev
Architecture: source
Version: 0.5.2-426-gc5ad4e4+dfsg5-2
Distribution: unstable
Urgency: medium
Maintainer: Debian Multimedia Maintainers 
<pkg-multimedia-maintain...@lists.alioth.debian.org>
Changed-By: Sebastian Ramacher <sramac...@debian.org>
Description:
 gpac       - GPAC Project on Advanced Content - utilities
 gpac-modules-base - GPAC Project on Advanced Content - modules
 libgpac-dev - GPAC Project on Advanced Content - development files
 libgpac4   - GPAC Project on Advanced Content - shared libraries
Closes: 803821 815431
Changes:
 gpac (0.5.2-426-gc5ad4e4+dfsg5-2) unstable; urgency=medium
 .
   * Team upload.
 .
   [ Andreas Cadhalpun ]
   * Fix build with ffmpeg 3.0. (Closes: #803821)
 .
   [ Sebastian Ramacher ]
   * Migrate to automatic dbg packages
   * debian/control:
     - Bump Standards-Version.
     - Update Vcs-*.
     - Drop obsolete Breaks+Replaces.
 .
   [ Steven Chamberlain ]
   * Update symbols for hurd and kfreebsd. (Closes: #815431)
Checksums-Sha1:
 8870e1d85bf2a70440bddd52115f5742fbfcc061 2712 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.dsc
 31fe4c79433514947738bfdeb7a4bd35b10dadbe 37980 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.debian.tar.xz
Checksums-Sha256:
 78567b11cb59cef9ea2361ae2d1ad6098adf9eb364eb4e9ed76682dc3cf83a44 2712 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.dsc
 80c4b6e84a3ee4ad8867536c0258e5f26b61b661ab5ff8619bea1e6dabcbf687 37980 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.debian.tar.xz
Files:
 7c1e431b02ceb93dce76745e9d9392fa 2712 graphics optional 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.dsc
 684e27853877bf860549e5595ae3bb86 37980 graphics optional 
gpac_0.5.2-426-gc5ad4e4+dfsg5-2.debian.tar.xz

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJW4KPrAAoJEGny/FFupxmTr0YP/3EcUF0Z1PjdbE+NOXPoj67R
0kFdFZWcmRw5xjMCUisw5EBkdq852ixKXYsooRSzxWw9AjKDjKUhRC6HmhdtSb1e
XM4q7IX7lTa5sD7BLRnf81llg0yOgQpqJf1igWlncqgq3sdEy+WXMYq/DvUjxeDW
GesIfytvDCNr9kGLJddPVId3+bYbKAWmkDgNc3zWMJqO9wbfjsZUFYOuORitktID
wW4/b4b/XIygHIRuRkhWcvQ9eGscUgP1HmwWJ7FWpXb8DCmvds9bJ3SKGsFM4xYp
+TOizurJ2LyrDJZe2SDEbk44ojd+aVIm/+E+5N8teCEj/DqFVpxef9WQGLmOqEI1
x/MAtec9FVbhrbZO98DwzovRhpZ8w5dZFJ6r+AFoKuYD0xIixhzWP0VT63DGDo/O
VUCRwBRZM+3h7FkfiCtHAPzbfjrWSgBxBUeWti7WeQSKcGIVrb33V1vCna/FPdvO
wgLPUNoBmq2wlXXTeJLq3KBgWLKNaXBGNpzz+7naTMFSvkGwdPK1FdV/SNHVMaTn
LmXP0LlIa0V4w7+iSxEk3pYezAw+gsCehqsSaWd0WyXMGdIVeVPaQzpMlkUARKMY
O7LROSrYNvJbqW/G6NiNN4p5loRB/WyBOVnq5r94Ytl3mHZvN8mPX82JgaStQG80
Tok9hg83Ta1PHBmYQYL3
=LOx7
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to