From 026ea640073e0a3f3ec7779482dce8bdf4de1eec Mon Sep 17 00:00:00 2001 From: Mara Karagianni Date: Mon, 13 Dec 2021 02:28:26 +0200 Subject: [PATCH] Update zinemaker.pdf, shuffle code, inputs-outputs --- README.md | 4 +- body/readme.pdf | Bin 11009 -> 54961 bytes colophon.py | 32 ++- {colophones => colophons}/colophon.pdf | Bin colophons/colophon_readme.pdf | Bin 0 -> 4550 bytes cover.py | 25 +- doc_pdf.py | 33 ++- shuffle_pdf.py | 317 +++---------------------- text/readme | 135 ++++++++--- zine_maker.py | 70 ++++-- zines/zinemaker.pdf | Bin 27023 -> 65232 bytes 11 files changed, 228 insertions(+), 388 deletions(-) rename {colophones => colophons}/colophon.pdf (100%) create mode 100644 colophons/colophon_readme.pdf diff --git a/README.md b/README.md index 4e96816..57765c6 100644 --- a/README.md +++ b/README.md @@ -127,7 +127,7 @@ from the terminal run: `pdfunite covers/cover.pdf body/body.pdf colophons/colophon.pdf zines/final.pdf` -You shall substitute the file paths to the your own corresponding /path/filenames +You shall substitute the file paths to your own corresponding /path/filenames ## See this readme as the generated screen version zine: open the file zines/zinemaker.pdf @@ -140,7 +140,7 @@ open the file zines/zinemaker.pdf Default parameters: as input "zines/zinemaker_screen.pdf" and as output "zinemaker{random_number}.pdf" Run it for your own pdf files as following: -`python shuffle_pdf.py` zines/.pdf zines/.pdf` +`python shuffle_pdf.py` .pdf .pdf` In the printer settings opt-in for the following settings: - A4 Landscape diff --git a/body/readme.pdf b/body/readme.pdf index 16d46be374c9743daa068e48e4ece734f4d238ce..8b72e5cb600bbc5ad420c3a39c72592d17ebed42 100644 GIT binary patch literal 54961 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 QM6x1TaUp;sD}nnz0A%U0E&u=k delta 7747 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%0A6P&EX{43SRV6?m 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 1: + if len(sys.argv) == 2: + output = "./body/readme.pdf" if len(sys.argv) == 3: output = sys.argv[2] inputfile = sys.argv[1] else: - inputfile = "./text/oulipo1.txt" - output = "./body/body{}.pdf".format(random.randint(1, 40)) + inputfile = "./text/readme" + output = "./body/readme.pdf" - make() + make(inputfile, output) diff --git a/shuffle_pdf.py b/shuffle_pdf.py index 12d13e4..9b27152 100644 --- a/shuffle_pdf.py +++ b/shuffle_pdf.py @@ -4,298 +4,39 @@ A script for generating A5 size pdf zines with a text-file input, under development, GPL3 Licence, Mara Karagianni May 2021 """ -import glob -import re -import sys +import random import subprocess -from fpdf import FPDF -# ref https://pyfpdf.readthedocs.io/en/latest/ +import sys -# Variables -header_font = 'helvetica' -header_font_size = 14 -text_font_size = 12 - -top_margin = 20 -left_margin = 20 -right_margin = 20 -left_max_margin = 160 - -max_height = 190 -left_x = 20 -top_y = 30 -cell_width = 110 -cell_header_height = 16 -cell_height = 6 - -# Image variables -img_x = 20 -img_y = 80 -img_len = 120 +from zine_maker import Zine -class Zine(FPDF): - - def add_new_signature(self, top_margin, left_margin, right_margin): - # create new page/signature - self.add_page() - self.set_margins(left_margin, top_margin, right_margin) - self.set_xy(left_margin, top_margin) - print('NEW SIGNATURE') - - def move_to_page_right(self, top_margin, left_max_margin, right_margin): - print('*****') - print("BOTTOM OF LEFT PAGE, height is {}".format(self.get_y())) - print('*****') - self.set_margins(top_margin, left_max_margin, right_margin) - self.set_xy(left_max_margin, top_margin) - - def position_img(self, img_filename, img_x, img_y, **kwargs): - img_size = subprocess.run( - ["identify", "-format", - "%[fx:w/72] by %[fx:h/72] inches", - "./%s" % img_filename], - stdout=subprocess.PIPE, text=True) - - img_height_inches = img_size.stdout.split(' ')[2] - img_width_inches = img_size.stdout.split(' ')[0] - img_height_mm = float(img_height_inches) * float(24.5) - img_width_mm = float(img_width_inches) * float(24.5) - - if kwargs: - max_height = kwargs["max_height"] - left_margin = kwargs["left_margin"] - top_margin = kwargs["top_margin"] - - if self.get_y() + img_height_mm >= max_height: - self.add_page() - self.set_xy(left_margin, top_margin) - img_y = top_margin - - previous_y = self.get_y() - # center image - img_x = (150 - img_width_mm) / 2 - self.image(img_filename, img_x, img_y, img_width_mm) - - # move y at the bottom of the image - # TODO check if get_y() would do the same job - self.set_xy(self.get_x(), previous_y+img_height_mm) - - def shuffle_chapters(self, pdfinput): - subprocess.run( - ["pdfseparate", "./%s" % pdfinput, "./%02d_chapter.pdf"], - stdout=subprocess.PIPE, text=True) - pages = glob.glob("./*_chapter.pdf") - pages.sort() - print("CHAPTERS {}".format(pages)) - shuffled_list = [] - count = 0 - while count < (len(pages))/2: - shuffled_list.append(pages[-(count+1)]) - shuffled_list.append(pages[count]) - count += 1 - # reverse - if count != len(pages)/2: - shuffled_list.append(pages[count]) - shuffled_list.append(pages[-(count+1)]) - count += 1 - return shuffled_list - - def create_pages(self, filename, max_height, left_margin, - left_max_margin, top_margin, right_margin, - cell_width, cell_height, cell_header_height, - header_font, text_font): - chapter = 0 - lines = open(filename).readlines() - print(filename) - - # first page - print("FIRST PAGE") - self.set_margins(left_margin, top_margin, - right_margin) - self.set_xy(left_margin, top_margin) - self.add_page() - - for line in lines: - - if ">>" in line: - self.set_font(text_font, '', size=16) - self.cell(cell_width, cell_height, line, - 0, ln=1, align='L') - self.set_font(text_font, '', size=text_font_size) - - # check if we have an image - elif line.startswith(""): - img_filename = line.split("")[1] - kwargs = { - "max_height": max_height, - "left_margin": left_margin, - "top_margin": top_margin - } - self.position_img( - img_filename, self.get_x(), self.get_y(), **kwargs) - - # check if we have a title - elif line.startswith("

"): - line = re.sub('((

)|(

$))', '', line) - self.set_text_color(255, 0, 255) - self.set_font(text_font, size=22) - if self.get_y() > top_margin: - self.set_xy(left_margin, top_margin+9) - self.add_page() - self.cell(cell_width, cell_header_height, line, - 0, ln=1, align='C') - left_x = self.get_x() - top_y = self.get_y() - self.dashed_line( - left_x, top_y, left_x+cell_width, top_y, - dash_length=3, space_length=3) - self.set_text_color(0, 0, 0) - self.set_font(text_font, size=text_font_size) - - elif line.startswith(""): - line = re.sub('(()|($))', '', line) - self.set_font(text_font, '', size=18) - self.cell(cell_width, cell_height, line, - 0, ln=1, align='L') - self.set_font(text_font, '', size=text_font_size) - - elif line.startswith("#"): - self.set_font('helvetica', 'B', size=9) - self.set_text_color(209, 17, 65) - self.multi_cell(cell_width, cell_height, line, - 0, align='L') - # go back to text font - self.set_text_color(0, 0, 0) - self.set_font(text_font, '', size=text_font_size) - - elif line.startswith("$") or line.startswith("(venv)"): - self.set_font('helvetica', 'B', size=9) - self.set_text_color(0, 30, 255) - - self.multi_cell(cell_width, cell_height, line, - 0, align='L') - # go back to text font - self.set_text_color(0, 0, 0) - self.set_font(text_font, '', size=text_font_size) - - elif line.startswith(""): - #line = re.sub('($)', '', line) - self.set_font('helvetica', 'B', size=9) - self.set_text_color(0,80,115) - self.multi_cell(cell_width, cell_height, line, - 0, align='L') - elif line.startswith(""): - #line = re.sub('($)', '', line) - self.multi_cell(cell_width, cell_height, line, - 0, align='L') - self.set_font(text_font, '', text_font_size) - self.set_text_color(0, 0, 0) - - elif "" in line: - line = re.sub('($)', '', line) - self.set_font(text_font, '', size=18) - self.set_text_color(0, 0, 0) - self.set_text_color(41, 98, 255) - self.cell(cell_width/8, cell_height, line, 0, align='C') - - elif "" in line: - line = re.sub('($)', '', line) - self.set_font(text_font, '', size=text_font_size) - self.set_text_color(0, 0, 0) - self.multi_cell(cell_width, cell_height, line, - 0, align='L') - - else: - # check if we need the following - variable_x = self.get_x() - self.multi_cell(cell_width, cell_height, line, 0, align='L') - self.set_xy(variable_x, self.get_y()) - - self.footer() - - def cover(self, title, cover_font, max_height): - col = 10 - margin = 15 - import random - self.set_margins(margin, margin, margin) - self.add_page() - for letter in title: - if self.get_y() >= max_height: - self.set_xy(margin+col, margin) - col += 40 - size = random.randrange(30, 50, 15) - self.set_font(cover_font, '', size) - variable_x = margin+col - print("LETTER {}, POSITION Y {}".format(letter, self.get_y())) - print("VAR X {}".format(variable_x)) - self.set_xy(variable_x, self.get_y()) - - self.cell(size, size, letter) - self.line(size, size, self.get_x(), self.get_y()) - if(size % 2 == 0): - var = "DF" - #r = 138, 43, 226 - R = random.randrange(30, 255, 40) - G = random.randrange(0, 55, 55) - B = random.randrange(0, 155, 50) - self.set_fill_color(R, G, 255) - else: - var = "D" - print(var) - self.rect( - float(self.get_x()), float(self.get_y()), - float(size/2), float(size*4), style = var) - self.ln(size/2) - - def colophon(self, text): - lines = open(text, 'r').readlines() - top_margin = 20 - margin = 25 - self.add_font( - 'CasaleNBP', '', r"fonts/CasaletwoNbp-Bp4V.ttf", - uni=True) - self.set_margins(margin, top_margin, margin) - size = 13 - cover_font = 'CasaleNBP' - self.set_font(cover_font, '', size) - self.add_page() - for line in lines: - self.multi_cell(100, size, line, 0, align='C') - - def footer(self): - # Go to 1.5 cm from bottom - self.set_y(-15) - # Select Arial italic 8 - #self.set_font('Arial', 'I', 8) - self.set_text_color(0, 0, 0) - self.set_font(text_font, '', size=text_font_size) - # Print current and total page numbers - self.cell(0, 10, '%s' % self.page_no(), 0, 0, 'C') +def shuffle_zine(finput, foutput): + # set font for all text + zine = Zine(orientation="P", unit="mm", format="A5") + chapter_list = zine.shuffle_chapters(finput) + proc = subprocess.Popen( + ["pdfunite"] + chapter_list + [foutput], + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE + ) + out, err = proc.communicate() + if err: + print("Something went wrong!", err.decode('utf-8'), sep="\n") + else: + print("PDF saved as {}".format(foutput)) + os.system("mv ./*_chapter.pdf ./tmp") +if __name__ == '__main__': + # file to get the text + if len(sys.argv) > 1: + if len(sys.argv) == 3: + output = sys.argv[2] + filename = sys.argv[1] + else: + filename = "./zines/zinemaker_screen.pdf" + output = "./zines/zinemaker{}.pdf".format(random.randint(1, 40)) -# file to get the text -if len(sys.argv) > 1: - if len(sys.argv) == 3: - output = sys.argv[2] - filename = sys.argv[1] -else: - filename = "./finals/test.pdf" - output = './finals/trial.pdf' - -# set font for all text -zine = Zine(orientation="P", unit="mm", format="A5") - -# cover font -zine.add_font('CasaleNBP', '', r"fonts/CasaletwoNbp-Bp4V.ttf", uni=True) -cover_font = 'CasaleNBP' - -# text font -zine.add_font( - 'Kpalter', '', r"fonts/KpProgrammerAlternatesNbp-Zg1q.ttf", uni=True) -text_font = 'Kpalter' -zine.set_font(text_font, '', size=text_font_size) - -chapter_list = zine.shuffle_chapters(filename) -subprocess.Popen(["pdfunite"] + chapter_list + [output]) + shuffle_zine(filename, output) diff --git a/text/readme b/text/readme index ae265a3..466bef3 100644 --- a/text/readme +++ b/text/readme @@ -1,5 +1,17 @@ -## To Download the project, near the top of the page, click on the download icon next to "WEB IDE". -You can choose which type of archived folder you want, and then open it in your filesystem. +# Introduction + +This zine helps in navigating the zine_maker code, a small software tool derived from pyPDF library. The code is written in Python, and provides a few scripts for creating covers, colophons, content, and also signatures for preparing a PDF for the printer. The scripts run with python version 3.x.x and we can feed to the scripts inputs and outputs. As an input, we give the path to a text file, which shall create the text and images content of the zine, and as an output we give a the path/filename of our choice. We can also run the scripts with no input nor output, in which case, they take as default parameters the readme text from the text/ folder and produce an output to either of the folders covers, colophons, body, or zines, depending on which script we are running each time. + +# Get the code + +## Download the source code +As of 2021-2022, the code is under active development by the author and can be cloned and/or downloaded from https://git.systerserver.net/mara/zine_maker. +To download the project, near the top of the gitlab page, click on the download icon next to "Find file". +You can choose which type of archived folder you want, and then open it in your filesystem, by right clicking the archived folder, or from the terminal: +``` +tar -xvf zine_maker.tar -C /home/user/destination +unzip zinme_maker.zip -d /home/user/destination +``` ## OR use git clone: ``` @@ -7,65 +19,130 @@ git clone https://zine:DskM_8XxtKt-Wym1xHd1@git.systerserver.net/mara/zine_maker cd zine_maker ``` +# Requirements -## Requirements -You need either python2 or python3 running on the computer +Basic requirements are listed here. +Python3 should be installed on the computer https://www.python.org/downloads/ -And also the pip command +And also the pip command if it didn't get installed with Python https://pip.pypa.io/en/stable/installation/ -Once these are installed, from within zine_maker run: +Once these are installed, from within zine_maker folder run: `pip install -r requirements.txt` -## For merging the cover.pdf, body.pdf and colophon.pdf there are many pdf merger tools, -one that is command line based is pdfunite +# Miscellaneous + +## Fonts +The source code comes with some fonts under the fonts folder. You can use your +fonts of preference by adding them either in the fonts folder and edit the +files cover.py, colophon.py and doc_pdf.py to give the new names. Or add your +absolute font path directly to the python scripts. + +## Text +The input texts should be clean from characters added by some text editors or +Operating Systems. Use the cat command to check your text is ready as input +with: +`cat --show-nonprinting input.txt` + +Symbols such as M-oM-;M or ^M (carriage Return / line feed) need to be removed. +A cool tool for that is dos2unix, which is available as command line, but needs +to be installed: +`dos2unix filename` + +Or with the sed command: +`sed -e "s/\r//g" file > newfile` + +Extensive info can be find at: +https://www.cyberciti.biz/faq/sed-remove-m-and-line-feeds-under-unix-linux-bsd-appleosx/ + +## Layout +All the font styling happens in the zine_maker function create_pages(). The +input text is parsed for specific tags or symbols in the begining of each line +and changes to the font color and size happen accordingly. We can add more or edit +existing rules, directly in the zine_maker code. + +## Parameters +The python scripts cover.py, colophon.py and doc_pdf.py take a text input and an output filename. If we give no input/output, the default input is the related readme files under covers/body/colophons/ + +## Merge +For merging the cover, body and colophon pdf files, there are many pdf merger tools. One that is command line based and is used in this tutorial is pdfunite http://linux-commands-examples.com/pdfunite -from the terminal run: - -`pdfunite cover.pdf body.pdf colophon.pdf output.pdf` - -## For shuffling the final pdf and prepare it for printing you need the pdfseparate command +## Print +For shuffling the final pdf and prepare it for printing you need the pdfseparate command http://www.linux-commands-examples.com/pdfseparate -it is used inside the shuffle_pdf.py file (see details at the end of this Readme) +it is used inside the shuffle_pdf.py file (see details at the end of this README). -## For making use of images in the script, image magick needs to be installed +## Images +For making use of images in the script +image magick needs to be installed http://www.imagemagick.org/ -## To make the content of the pdf +# Run the code! + +## Make the content of the pdf +The default parameters included in the script would create a zine from this +readme: `python doc_pdf.py ` -OR +OR you can experiment with the other sample text found in this repository. `python doc_pdf.py text/images.txt body/images.pdf` -OR add your text file and replace respectively +OR get real and add your own text file and replace respectively the input and +output filenames. `python doc_pdf.py text/.txt body/.pdf` -## To make the cover of the pdf +## Make the cover of the pdf +Same, the default parameters included in the script would create the cover for the zine_maker: `python cover.py` -OR +OR try-out the other cover samples: `python cover.py text/cover.txt covers/cover.pdf` -OR add your text file and replace respectively +OR add your cover text file and replace respectively: `python cover.py text/.txt covers/.pdf` -## To make the colophon of the pdf -`python cover.py ` +## Make the colophon of the pdf +Same, the default parameters included in the script would create the colophon for the zine_maker: +`python colophon.py ` -OR +OR try-out the other colophon samples: -`python cover.py text/colophon.txt colophones/colophon.pdf` +`python colophon.py text/colophon.txt colophons/colophon.pdf` -OR add your text file and replace respectively +OR add your own colophon text file and replace respectively: -`python cover.py text/.txt colophones/.pdf` +`python colophon.py text/.txt colophons/.pdf` -## To prepare signatures for printing a small booklet -`python shuffle_pdf.py final.pdf final_shuffled.pdf` \ No newline at end of file +# Make a screen PDF + +## For the final screen version +from the terminal run: + +`pdfunite covers/cover.pdf body/body.pdf colophons/colophon.pdf zines/final.pdf` + +You shall substitute the file paths to your own corresponding /path/filenames + +## See this readme as the generated screen version zine: +open the file zines/zinemaker.pdf + +# Make a zine + +## Prepare signatures for printing + +./thumbs/printer_settings.png + +Default parameters: as input "zines/zinemaker_screen.pdf" and as output "zinemaker{random_number}.pdf" +Run it for your own pdf files as following: +`python shuffle_pdf.py` zines/.pdf zines/.pdf` + +In the printer settings opt-in for the following settings: +- A4 Landscape +- Two pages per side +- Double side - short edge diff --git a/zine_maker.py b/zine_maker.py index cfc0195..d300f56 100644 --- a/zine_maker.py +++ b/zine_maker.py @@ -5,6 +5,7 @@ based on pyFPDF. GPL3 License, Mara Karagianni May 2021 """ import glob +import random import re import subprocess from fpdf import FPDF @@ -29,7 +30,7 @@ class Zine(FPDF): def position_img(self, img_filename, img_x, img_y, **kwargs): img_size = subprocess.run( - ["identify", "-format", "%[fx:w/72] by %[fx:h/72] inches", + ["identify", "-format", "%[fx:w/150] by %[fx:h/150] inches", "%s" % img_filename], stdout=subprocess.PIPE, text=True) @@ -58,8 +59,10 @@ class Zine(FPDF): self.set_xy(self.get_x(), previous_y+img_height_mm) def shuffle_chapters(self, pdfinput): + # TODO add 2 blank pages after the cover and colophon + # check if we have an odd number of pages subprocess.run( - ["pdfseparate", "./%s" % pdfinput, "./%02d_chapter.pdf"], + ["pdfseparate", "%s" % pdfinput, "./%02d_chapter.pdf"], stdout=subprocess.PIPE, text=True) pages = glob.glob("./*_chapter.pdf") pages.sort() @@ -87,8 +90,8 @@ class Zine(FPDF): text_font = args[4] text_font_size = args[5] - lines = open(filename).readlines() - print(filename) + f = open(filename, 'rt') + lines = f.readlines() # first page print("FIRST PAGE") @@ -119,7 +122,6 @@ class Zine(FPDF): elif line.startswith("

"): line = re.sub('((

)|(

$))', '', line) self.set_text_color(130, 50, 250) - # self.set_text_color(255, 0, 255) self.set_font(header_font, size=22) if self.get_y() > top_margin: self.set_xy(left_margin, top_margin+9) @@ -148,15 +150,42 @@ class Zine(FPDF): 0, ln=1, align='C') self.set_font(text_font, '', size=text_font_size) - elif line.startswith("#"): - self.set_font('helvetica', 'B', size=9) - self.set_text_color(209, 17, 65) + elif line.startswith("# "): + if self.get_y() > top_margin: + self.set_xy(left_margin, top_margin+9) + self.add_page() + self.set_font(header_font, size=25) + self.set_text_color(255, 0, 0) self.multi_cell(cell_width, cell_height, line, 0, align='L') # go back to text font self.set_text_color(0, 0, 0) self.set_font(text_font, '', size=text_font_size) + elif line.startswith("##"): + line = re.sub('()', '', line) + subheader_font = "helvetica" + self.set_font(subheader_font, size=18) + self.set_text_color(0, 0, 0) + self.multi_cell(cell_width, cell_height, line, + 0, align='L') + # go back to text font + self.set_text_color(0, 0, 0) + self.set_font(text_font, '', size=text_font_size) + + elif line.startswith("`") or line.startswith("```"): + self.set_font('helvetica', '', size=11) + self.set_text_color(0, 30, 255) + line = re.sub('((`)|(```))', '', line) + + self.multi_cell(cell_width, cell_height, line, + 0, align='L') + + elif len(line.strip()) == 0: + # go back to text font + self.set_text_color(0, 0, 0) + self.set_font(text_font, '', size=text_font_size) + elif line.startswith("$") or line.startswith("(venv)"): self.set_font('helvetica', 'B', size=9) self.set_text_color(0, 30, 255) @@ -200,12 +229,13 @@ class Zine(FPDF): self.multi_cell(cell_width, cell_height, line, 0, align='L') self.set_xy(variable_x, self.get_y()) + # close file + f.close() # self.footer() def cover(self, file_title, cover_font, max_height): col = 10 - margin = 15 - import random + margin = 5 self.set_margins(margin, margin, margin) self.add_page() try: @@ -218,10 +248,12 @@ class Zine(FPDF): if self.get_y() >= max_height: self.set_xy(margin+col, margin) col += 40 - size = random.randrange(30, 50, 15) + size = random.randrange(15, 30, 10) self.set_font(cover_font, '', size) variable_x = margin+col - print("LETTER {}, POSITION Y {}".format(letter, self.get_y())) + print( + "LETTER {}, POSITION Y {}".format(letter, self.get_y()) + ) print("VAR X {}".format(variable_x)) self.set_xy(variable_x, self.get_y()) @@ -241,24 +273,30 @@ class Zine(FPDF): float(size/2), float(size*4), style=var) self.ln(size/2) + # close the file title.close() + self.set_text_color(0, 0, 0, 0) - def colophon(self, text, cover_font): - lines = open(text, 'r').readlines() + def colophon(self, text, colophon_font): + f = open(text, 'r') + lines = f.readlines() top_margin = 20 margin = 25 self.set_margins(margin, top_margin, margin) size = 13 - self.set_font(cover_font, '', size) + self.set_font(colophon_font, '', size) + self.set_text_color(0, 0, 0) self.add_page() for line in lines: self.multi_cell(100, size, line, 0, align='C') + # close the file + f.close() def footer(self): text_font = 'Helvetica' # Go to 1.5 cm from bottom self.set_y(-12) - self.set_text_color(0, 0, 0) + # self.set_text_color(0, 0, 0) self.set_font(text_font, '', size=7) # Print current page number # self.cell(0, 7, '%s' % self.page_no(), 0, 0, 'C') diff --git a/zines/zinemaker.pdf b/zines/zinemaker.pdf index 15fc6d0ecafff11002460a77927b6d6296ec2769..3bd7353013b43cfdf898900c6602fd81815dbfce 100644 GIT binary patch literal 65232 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 KN-0ZYWBfnl&)MPt