Please create a handbook colorful pdf in which you explain in super easy way the grammar topic given in attached file with 3 examples each and later comparing the grammatical differences and when to use "Will" vs " be going to" vs present simple future use and present continuous future use with 3 examples each everytime. Also explain in easy way the grammar part in the attached about " due to" , likey, "bound to" , also mention 3 daily life use examples. Later give complete and individual answers to exercise 5, 6, 7, 8,9,10 from the attached file.
~/
British Council future forms will going to present continuous present simple grammar
~/attachments
python -c "from pypdf import PdfReader; p=r'/tmp/workspace/attachments/b9aa723e-00aa-4538-9517-08d40184f2ee/DOC-20260922-WA0017 (1).pdf'; r=PdfReader(p); print('PAGES',len(r.pages)); [print('\\n--- PAGE',i+1,'---\\n'+(pg.extract_text() or '')) for i,pg in enumerate(r.pages)]"
~/
mkdir -p "/tmp/workspace/future-grammar-handbook/src" "/tmp/workspace/future-grammar-handbook/output" && python - <<'PY' from reportlab.lib.pagesizes import A4 from reportlab.lib import colors from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle from reportlab.lib.enums import TA_CENTER, TA_LEFT from reportlab.lib.units import cm from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, PageBreak, KeepTogether from reportlab.pdfbase.pdfmetrics import stringWidth from reportlab.pdfbase.ttfonts import TTFont from reportlab.pdfbase import pdfmetrics from reportlab.lib.colors import HexColor from reportlab.pdfgen import canvas from reportlab.lib.utils import simpleSplit from pathlib import Path out=Path('/tmp/workspace/future-grammar-handbook/output/Future_Grammar_Handbook.pdf') NAVY=HexColor('#173F5F'); TEAL=HexColor('#00A6A6'); ORANGE=HexColor('#F28C28'); PINK=HexColor('#E95D8A'); PURPLE=HexColor('#6C5CE7'); PALE=HexColor('#F6F8FB'); INK=HexColor('#25303B'); GREEN=HexColor('#2E9E6F'); YELLOW=HexColor('#FFF3BF'); LIGHTTEAL=HexColor('#E7F8F7'); LIGHTPINK=HexColor('#FDEAF0'); LIGHTPURPLE=HexColor('#EFEAFF'); LIGHTORANGE=HexColor('#FFF0DE'); styles=getSampleStyleSheet() styles.add(ParagraphStyle(name='TitleX',parent=styles['Title'],fontName='Helvetica-Bold',fontSize=29,leading=34,textColor=NAVY,alignment=TA_CENTER,spaceAfter=12)) styles.add(ParagraphStyle(name='SubX',parent=styles['Normal'],fontName='Helvetica',fontSize=12.5,leading=18,textColor=INK,alignment=TA_CENTER)) styles.add(ParagraphStyle(name='H1x',parent=styles['Heading1'],fontName='Helvetica-Bold',fontSize=20,leading=24,textColor=NAVY,spaceBefore=5,spaceAfter=9)) styles.add(ParagraphStyle(name='H2x',parent=styles['Heading2'],fontName='Helvetica-Bold',fontSize=13.5,leading=17,textColor=NAVY,spaceBefore=6,spaceAfter=5)) styles.add(ParagraphStyle(name='BodyX',parent=styles['BodyText'],fontName='Helvetica',fontSize=10.3,leading=14.5,textColor=INK,spaceAfter=5)) styles.add(ParagraphStyle(name='SmallX',parent=styles['BodyText'],fontName='Helvetica',fontSize=8.8,leading=11.3,textColor=INK)) styles.add(ParagraphStyle(name='ExampleX',parent=styles['BodyText'],fontName='Helvetica',fontSize=10,leading=14,textColor=INK,leftIndent=8,spaceAfter=2)) styles.add(ParagraphStyle(name='BoxHead',parent=styles['BodyText'],fontName='Helvetica-Bold',fontSize=12,leading=15,textColor=colors.white,alignment=TA_LEFT)) styles.add(ParagraphStyle(name='TableHead',parent=styles['BodyText'],fontName='Helvetica-Bold',fontSize=9.5,leading=12,textColor=colors.white)) styles.add(ParagraphStyle(name='TableX',parent=styles['BodyText'],fontName='Helvetica',fontSize=8.8,leading=11,textColor=INK)) class NumCanvas(canvas.Canvas): def __init__(self,*args,**kwargs): canvas.Canvas.__init__(self,*args,**kwargs); self.pages=[] def showPage(self): self.pages.append(dict(self.__dict__)); self._startPage() def save(self): n=len(self.pages) for state in self.pages: self.__dict__.update(state) self.setStrokeColor(TEAL); self.setLineWidth(2); self.line(1.5*cm,1.25*cm,19.5*cm,1.25*cm) self.setFont('Helvetica',8); self.setFillColor(NAVY) self.drawString(1.5*cm,.73*cm,'Future Grammar Handbook') self.drawRightString(19.5*cm,.73*cm,f'Page {self._pageNumber} of {n}') canvas.Canvas.showPage(self) canvas.Canvas.save(self) def P(t, style='BodyX'): return Paragraph(t,styles[style]) def bullet(t): return P('• '+t,'BodyX') def banner(title,color): tab=Table([[P(title,'BoxHead')]],colWidths=[18*cm]); tab.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),color),('LEFTPADDING',(0,0),(-1,-1),11),('RIGHTPADDING',(0,0),(-1,-1),11),('TOPPADDING',(0,0),(-1,-1),7),('BOTTOMPADDING',(0,0),(-1,-1),7),('VALIGN',(0,0),(-1,-1),'MIDDLE')])) return tab def box(title, body, color=TEAL, bg=LIGHTTEAL): t=Table([[P(title,'BoxHead')],[P(body,'BodyX')]],colWidths=[18*cm]) t.setStyle(TableStyle([('BACKGROUND',(0,0),(0,0),color),('BACKGROUND',(0,1),(0,1),bg),('BOX',(0,0),(-1,-1),.5,color),('LEFTPADDING',(0,0),(-1,-1),10),('RIGHTPADDING',(0,0),(-1,-1),10),('TOPPADDING',(0,0),(-1,-1),6),('BOTTOMPADDING',(0,0),(-1,-1),6)])) return t def form_section(title, formula, meaning, examples, tip, color, bg): arr=[banner(title,color),Spacer(1,5),P(f'<b>Form:</b> {formula}'),P(f'<b>Use it when:</b> {meaning}'),P('<b>Three everyday examples</b>','H2x')] arr += [P(f'{i}. {e}','ExampleX') for i,e in enumerate(examples,1)] arr += [Spacer(1,3),box('Quick clue',tip,color,bg),Spacer(1,9)] return arr story=[] story += [Spacer(1,1.2*cm),P('FUTURE FORMS','SubX'),P('Easy Grammar Handbook','TitleX'),P('Will • be going to • present simple • present continuous<br/>plus <b>due to</b>, <b>likely to</b>, and <b>bound to</b>','SubX'),Spacer(1,18)] story += [box('The big idea','English has <b>no single future tense</b>. We choose a form to show our meaning: an instant decision, a plan, an arrangement, a timetable, or a prediction.',TEAL,LIGHTTEAL),Spacer(1,12)] intro=Table([[P('<b>1. Will</b><br/>instant decision, promise, prediction','TableX'),P('<b>2. Be going to</b><br/>plan already in your mind, or evidence now','TableX')],[P('<b>3. Present simple</b><br/>official timetables and schedules','TableX'),P('<b>4. Present continuous</b><br/>a personal arrangement is fixed','TableX')]],colWidths=[9*cm,9*cm]) intro.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),colors.white),('GRID',(0,0),(-1,-1),.5,HexColor('#B8DDE0')),('VALIGN',(0,0),(-1,-1),'TOP'),('LEFTPADDING',(0,0),(-1,-1),10),('RIGHTPADDING',(0,0),(-1,-1),10),('TOPPADDING',(0,0),(-1,-1),8),('BOTTOMPADDING',(0,0),(-1,-1),8)])) story += [intro,Spacer(1,15),P('Start here: ask yourself <b>“Was this decided now, planned before, arranged with someone, or written on a timetable?”</b>','SubX'),PageBreak()] story += form_section('1. WILL', '<b>will + base verb</b> | I will go / She will call','you decide <b>at the moment of speaking</b>; you make a promise or offer; or you give a prediction/opinion.', ['The phone is ringing. <b>I’ll answer it.</b>','Don’t worry, <b>I’ll help you</b> with the bags.','I think our team <b>will win</b> tonight.'],'Think “I decide NOW.” <b>Will</b> is also common with: I think, probably, maybe, I’m sure.',ORANGE,LIGHTORANGE) story += form_section('2. BE GOING TO', '<b>am / is / are going to + base verb</b>','you had a plan <b>before</b> speaking, or there is clear evidence now that something will happen.', ['I’m <b>going to cook</b> pasta tonight.','We’re <b>going to visit</b> my aunt on Saturday.','Look at those clouds! It’s <b>going to rain</b>.'],'Think “The plan or evidence already exists.” Do not use it for a sudden decision.',PINK,LIGHTPINK) story += [PageBreak()] story += form_section('3. PRESENT SIMPLE FOR THE FUTURE', '<b>present simple</b> | The train leaves / The film starts','you talk about a <b>fixed timetable, programme, or official schedule</b>. It is usually not your personal plan.', ['The train <b>leaves</b> at 7:15 tomorrow.','The museum <b>opens</b> at 10 a.m. on Monday.','Our English class <b>starts</b> next week.'],'Look for a timetable: buses, trains, lessons, films, flights, shops, events.',PURPLE,LIGHTPURPLE) story += form_section('4. PRESENT CONTINUOUS FOR THE FUTURE', '<b>am / is / are + verb-ing</b> | I’m meeting / They’re flying','you have a <b>personal arrangement</b>. Often another person, a place, or a time has been agreed.', ['I’m <b>meeting</b> Sara after work.','We’re <b>having</b> dinner with our neighbours on Friday.','My parents are <b>flying</b> to Delhi tomorrow morning.'],'Think “It is arranged.” It often answers: Who? Where? When? With whom?',TEAL,LIGHTTEAL) story += [PageBreak()] story += [P('Which Future Form Should I Use?','H1x'),P('Use the meaning, not just the time word. More than one form can sometimes be possible, but each form changes the focus slightly.'),Spacer(1,5)] data=[[P('Form','TableHead'),P('Main meaning','TableHead'),P('Ask yourself','TableHead'),P('Example','TableHead')], [P('<b>will</b>','TableX'),P('decision now, offer, promise, opinion prediction','TableX'),P('“Am I deciding or offering now?”','TableX'),P('I’ll carry that bag.','TableX')], [P('<b>be going to</b>','TableX'),P('earlier intention or evidence now','TableX'),P('“Did I plan it before, or can I see evidence?”','TableX'),P('I’m going to apply for that job.','TableX')], [P('<b>present simple</b>','TableX'),P('official timetable or schedule','TableX'),P('“Is it on a timetable?”','TableX'),P('The flight lands at 9:40.','TableX')], [P('<b>present continuous</b>','TableX'),P('personal fixed arrangement','TableX'),P('“Is it arranged with details?”','TableX'),P('I’m seeing the dentist at 3.','TableX')]] t=Table(data,colWidths=[3*cm,5*cm,5.2*cm,4.8*cm],repeatRows=1) t.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,0),NAVY),('BACKGROUND',(0,1),(-1,-1),colors.white),('ROWBACKGROUNDS',(0,1),(-1,-1),[HexColor('#F8FBFC'),colors.white]),('GRID',(0,0),(-1,-1),.4,HexColor('#B9CCD7')),('VALIGN',(0,0),(-1,-1),'TOP'),('LEFTPADDING',(0,0),(-1,-1),6),('RIGHTPADDING',(0,0),(-1,-1),6),('TOPPADDING',(0,0),(-1,-1),6),('BOTTOMPADDING',(0,0),(-1,-1),6)])) story += [t,Spacer(1,12),box('Compare the same idea','<b>I’ll meet Sam at 6.</b> = I decide now / state a future intention.<br/><b>I’m going to meet Sam at 6.</b> = this is my earlier plan.<br/><b>I’m meeting Sam at 6.</b> = the meeting is arranged.<br/><b>The meeting starts at 6.</b> = 6 is the scheduled start time.',ORANGE,LIGHTORANGE),Spacer(1,10),P('<b>Easy warning:</b> <i>I meet friends later</i> is usually not correct for a personal plan. Say <b>We’re meeting friends later</b> or <b>We’re going to meet friends later.</b>','BodyX'),PageBreak()] story += [P('Future Adjectives: due to, likely to, bound to','H1x'),box('Important spelling note','In this unit, <b>due to + verb</b> means <b>expected/scheduled to happen</b>: “The train is due to arrive.” This is different from <b>due to + noun</b> meaning “because of”: “The match was cancelled due to rain.”',PURPLE,LIGHTPURPLE),Spacer(1,8)] for title, formula, meaning, ex, tip, col,bg in [ ('DUE TO','<b>be due to + base verb</b>','something is expected at a particular time, often on a schedule.',['The bus is <b>due to arrive</b> in five minutes.','My rent is <b>due to be paid</b> on the first of the month.','The baby is <b>due to be born</b> in November.'],'It is about expected timing, not certainty.',ORANGE,LIGHTORANGE), ('LIKELY TO','<b>be likely to + base verb</b>','something is probable, but not certain.',['It is <b>likely to rain</b> this evening.','She is <b>likely to be</b> late because of traffic.','Prices are <b>likely to go up</b> next year.'],'Think “probably.”',TEAL,LIGHTTEAL), ('BOUND TO','<b>be bound to + base verb</b>','you feel something is almost certain, often because of the situation.',['You are <b>bound to make</b> mistakes when you learn.','With all this traffic, we are <b>bound to be</b> late.','He studies every day, so he is <b>bound to pass</b>.'],'Think “almost certainly.”',PINK,LIGHTPINK)]: story += [banner(title,col),Spacer(1,3),P(f'<b>Form:</b> {formula}'),P(f'<b>Easy meaning:</b> {meaning}'),P('<b>Three daily-life examples</b>','H2x')]+[P(f'{i}. {x}','ExampleX') for i,x in enumerate(ex,1)]+[box('Remember',tip,col,bg),Spacer(1,7)] story += [PageBreak()] story += [P('Answers: Exercise 5','H1x'),P('This is a discussion exercise, so these are <b>complete model answers</b>. Your own answers may be different.'),box('5.1 What can you remember?','<b>Going to</b> is for earlier plans and evidence. <b>Will</b> is for decisions now, offers, promises, and opinions about the future. <b>Present simple</b> is for fixed schedules. <b>Present continuous</b> is for personal arrangements.',TEAL,LIGHTTEAL),Spacer(1,8),box('5.2 Which forms do we use?','<b>a. Plans:</b> be going to, or present continuous for a fixed arrangement.<br/><b>b. Decisions at the time of speaking and promises:</b> will.<br/><b>c. Future scheduled events:</b> present simple.',ORANGE,LIGHTORANGE),Spacer(1,12),P('Answers: Exercise 6','H1x'),P('Choose the option that does <b>not</b> fit the intended future meaning.'), box('6.1','<b>b</b> is incorrect: “is improving” describes something happening now, not the future result.',PINK,LIGHTPINK), box('6.2','<b>c</b> is incorrect: use “We’re meeting ...” or “We’re going to meet ...” for a future arrangement/plan.',PINK,LIGHTPINK), box('6.3','<b>b</b> is incorrect in this prediction context. Use “It’s going to cause ...” or “It’ll cause ...”.',PINK,LIGHTPINK), box('6.4','<b>b</b> is the least suitable for asking about plans. <b>a</b> and <b>c</b> ask naturally about arranged/planned holiday activities.',PINK,LIGHTPINK), box('6.5','<b>b</b> is incorrect. <b>a</b> is a spontaneous offer. <b>c</b> can be possible if the speaker already intends to help, but <b>a</b> is the natural choice here.',PINK,LIGHTPINK),PageBreak()] story += [P('Answers: Exercises 7 and 8','H1x'),P('Exercise 7: Match the examples (a-c) with the explanations (1-3).'),box('Exercise 7','<b>a - 3</b>: due to = expected at a particular time.<br/><b>b - 2</b>: likely to = highly probable in the speaker’s view.<br/><b>c - 1</b>: bound to = almost certain.',PURPLE,LIGHTPURPLE),Spacer(1,10),P('Exercise 8: Choose the correct option.','H2x')] ans8=[('1','bound to','There are bound to be problems when a new system starts.'),('2','due to','Arrival is expected at a particular time.'),('3','bound to','This is a likely result if he continues behaving that way.'),('4','due to','The completion has an expected month.'),('5','bound to','Worrying is the natural, almost certain reaction.'),('6','due to','Giving birth is expected very soon.'),('7','bound to','The speaker predicts great difficulty.')] data=[[P('No.','TableHead'),P('Answer','TableHead'),P('Why?','TableHead')]]+[[P(a,'TableX'),P(f'<b>{b}</b>','TableX'),P(c,'TableX')] for a,b,c in ans8] t=Table(data,colWidths=[1.3*cm,3.2*cm,13.5*cm],repeatRows=1); t.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,0),NAVY),('ROWBACKGROUNDS',(0,1),(-1,-1),[HexColor('#F8FBFC'),colors.white]),('GRID',(0,0),(-1,-1),.4,HexColor('#B9CCD7')),('VALIGN',(0,0),(-1,-1),'TOP'),('LEFTPADDING',(0,0),(-1,-1),7),('RIGHTPADDING',(0,0),(-1,-1),7),('TOPPADDING',(0,0),(-1,-1),6),('BOTTOMPADDING',(0,0),(-1,-1),6)])); story += [t,Spacer(1,13),P('Answers: Exercise 9','H1x'),P('Exercise 9 asks for true examples. Here are adaptable model answers. Replace the details with facts about your life and country.'),box('Due to happen next year','1. My sister is due to finish university next year.<br/>2. Our local library is due to reopen after repairs in March.',ORANGE,LIGHTORANGE),box('Likely to happen in my country','1. Food prices are likely to rise next year.<br/>2. More people are likely to use electric buses in my city.',TEAL,LIGHTTEAL),box('Bound to happen in the world','1. New technology is bound to change the way people work.<br/>2. There are bound to be new scientific discoveries at some point.',PINK,LIGHTPINK),PageBreak()] story += [P('Answers: Exercise 10 and Speaking Task','H1x'),P('Exercise 10 is an opinion discussion. This is one complete individual model answer for the place where I live.'),box('My priorities for investment','The most important areas are <b>jobs for young people</b>, <b>affordable housing</b>, and <b>protecting the environment</b>. Young people need training and good jobs so that they will stay in the area. More affordable homes are likely to help families. Better public transport and green spaces are bound to improve daily life.',TEAL,LIGHTTEAL),Spacer(1,9),P('Speaking task: model response to the hotel and leisure complex plan','H2x'),P('<b>My view: I support the plan with changes.</b> The complex will create jobs, especially for young people. The hotel is likely to attract visitors, and local restaurants and shops are likely to earn more money. However, the development is bound to increase traffic and noise. The council is due to consider the final transport plan next month.'),P('I think the developer should build frequent bus links and safe cycle paths before the hotel opens. They should also protect trees and local wildlife. The project is going to include a water park and a casino, but it is important that local residents are going to benefit too. If these changes are included, I will support the plan.'),Spacer(1,12),box('Useful phrases for your own answer','<b>I support / oppose the plan because ...</b><br/><b>It will create / cause ...</b><br/><b>It is likely to ...</b><br/><b>There are bound to be ...</b><br/><b>The council is due to ...</b><br/><b>We are going to need ...</b>',PURPLE,LIGHTPURPLE),Spacer(1,14),P('Mini self-check','H2x'),P('Before you speak or write, check: <b>Will = now?</b> <b>Going to = earlier plan/evidence?</b> <b>Present simple = timetable?</b> <b>Present continuous = arrangement?</b>','BodyX'),Spacer(1,10),P('Based on the attached grammar worksheet, Unit 2 “Sightseeing”, p. 21. Supplementary grammar wording checked against the British Council LearnEnglish future-forms guidance.','SmallX')] doc=SimpleDocTemplate(str(out),pagesize=A4,rightMargin=1.5*cm,leftMargin=1.5*cm,topMargin=1.4*cm,bottomMargin=1.6*cm,title='Future Grammar Handbook',author='Orris') doc.build(story,canvasmaker=NumCanvas) print(out, out.exists(), out.stat().st_size) PY python -c "from pypdf import PdfReader; p='/tmp/workspace/future-grammar-handbook/output/Future_Grammar_Handbook.pdf'; r=PdfReader(p); print('pages',len(r.pages)); print('textchars',sum(len(x.extract_text() or '') for x in r.pages)); print((r.pages[0].extract_text() or '')[:100])"
Future Grammar Handbook
PDF Document · PDF
Write complete individual answers for the exercises given in attached file.
~/
British Council LearnEnglish grammar future forms exercise answers
~/attachments/b9aa723e-00aa-4538-9517-08d40184f2ee
python -c "from pypdf import PdfReader; p=r'/tmp/workspace/attachments/b9aa723e-00aa-4538-9517-08d40184f2ee/DOC-20260922-WA0019.pdf'; r=PdfReader(p); print('PAGES',len(r.pages)); [print('\\n--- PAGE',i+1,'---\\n'+(pg.extract_text() or '')) for i,pg in enumerate(r.pages)]"
| Clothes | DIY | First aid | Kitchen | Office/study |
|---|---|---|---|---|
| needle | hammer | bandage | can opener | stapler |
| thread | screwdriver | plasters | cloth | paper clips |
| peg | drill | antiseptic cream | wooden spoon | Blu Tack |
| scissors | nails | cotton wool | pegs | scissors |
| safety pin | stepladder | thermometer | bucket | tape |