Soumettre la recherche
Mettre en ligne
Beautiful Development ブレイクスルー体験記
•
Télécharger en tant que KEY, PDF
•
4 j'aime
•
10,251 vues
K
kentaro watanabe
Suivre
Technologie
Signaler
Partager
Signaler
Partager
1 sur 53
Télécharger maintenant
Recommandé
Javascript & jQuery: A pragmatic introduction
Javascript & jQuery: A pragmatic introduction
Iban Martinez
Cdr stats-vo ip-analytics_solution_mongodb_meetup
Cdr stats-vo ip-analytics_solution_mongodb_meetup
christkv
Daily notes
Daily notes
meghendra168
Basic articles of incorporation template free basic articles of incorporatio...
Basic articles of incorporation template free basic articles of incorporatio...
Lloyd Peace
Inteligencia artificial 4
Inteligencia artificial 4
Nauber Gois
Юрий Буянов «Squeryl — ORM с человеческим лицом»
Юрий Буянов «Squeryl — ORM с человеческим лицом»
e-Legion
pewPew<s>xxd
pewPew<s>xxd
SomeRandoDudewhojust
Dec10 tuesday conversation_idelarcor
Dec10 tuesday conversation_idelarcor
Ignacio del Arco Herrera
Recommandé
Javascript & jQuery: A pragmatic introduction
Javascript & jQuery: A pragmatic introduction
Iban Martinez
Cdr stats-vo ip-analytics_solution_mongodb_meetup
Cdr stats-vo ip-analytics_solution_mongodb_meetup
christkv
Daily notes
Daily notes
meghendra168
Basic articles of incorporation template free basic articles of incorporatio...
Basic articles of incorporation template free basic articles of incorporatio...
Lloyd Peace
Inteligencia artificial 4
Inteligencia artificial 4
Nauber Gois
Юрий Буянов «Squeryl — ORM с человеческим лицом»
Юрий Буянов «Squeryl — ORM с человеческим лицом»
e-Legion
pewPew<s>xxd
pewPew<s>xxd
SomeRandoDudewhojust
Dec10 tuesday conversation_idelarcor
Dec10 tuesday conversation_idelarcor
Ignacio del Arco Herrera
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Luis Curo Salvatierra
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Pluribus One
Final tagless and cats mtl
Final tagless and cats mtl
Alexander Zaidel
SQLAlchemy Seminar
SQLAlchemy Seminar
Yury Yurevich
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
Marc D Anderson
JavaScript Objects and OOP Programming with JavaScript
JavaScript Objects and OOP Programming with JavaScript
Laurence Svekis ✔
Google Visualization API
Google Visualization API
Jason Young
Electronic Marketing To Your Fan Base
Electronic Marketing To Your Fan Base
Jeff Risley
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Forrest Chang
Worth the hype - styled components
Worth the hype - styled components
kathrinholzmann
javascript Model- Render & canvas sample
javascript Model- Render & canvas sample
Hika Maeng
Wells Fargo Outline
Wells Fargo Outline
The Entech Group, Inc.
74 kg greco
74 kg greco
purebader
Europea
Europea
Bressolrebelat
[ HackFest.pl 2012] Testing - what for and how
[ HackFest.pl 2012] Testing - what for and how
Mikstura.IT Foundation | Web & Mobile Community
Xdebug confoo11
Xdebug confoo11
Bachkoutou Toutou
Salesforce Data Models for Pros: Simplifying The Complexities
Salesforce Data Models for Pros: Simplifying The Complexities
Salesforce Developers
Dig Deeper into WordPress - WD Meetup Cairo
Dig Deeper into WordPress - WD Meetup Cairo
Mohamed Mosaad
[ WrocLoveRb 2012] user perspective testing using ruby
[ WrocLoveRb 2012] user perspective testing using ruby
Mikstura.IT Foundation | Web & Mobile Community
HCE tutorial
HCE tutorial
Chien-Ming Chou
JQuery In Rails
JQuery In Rails
Louie Zhao
Dynamic Deployment With Apache Felix
Dynamic Deployment With Apache Felix
Marcel Offermans
Contenu connexe
Tendances
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Luis Curo Salvatierra
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Pluribus One
Final tagless and cats mtl
Final tagless and cats mtl
Alexander Zaidel
SQLAlchemy Seminar
SQLAlchemy Seminar
Yury Yurevich
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
Marc D Anderson
JavaScript Objects and OOP Programming with JavaScript
JavaScript Objects and OOP Programming with JavaScript
Laurence Svekis ✔
Google Visualization API
Google Visualization API
Jason Young
Electronic Marketing To Your Fan Base
Electronic Marketing To Your Fan Base
Jeff Risley
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Forrest Chang
Worth the hype - styled components
Worth the hype - styled components
kathrinholzmann
javascript Model- Render & canvas sample
javascript Model- Render & canvas sample
Hika Maeng
Wells Fargo Outline
Wells Fargo Outline
The Entech Group, Inc.
74 kg greco
74 kg greco
purebader
Europea
Europea
Bressolrebelat
[ HackFest.pl 2012] Testing - what for and how
[ HackFest.pl 2012] Testing - what for and how
Mikstura.IT Foundation | Web & Mobile Community
Xdebug confoo11
Xdebug confoo11
Bachkoutou Toutou
Salesforce Data Models for Pros: Simplifying The Complexities
Salesforce Data Models for Pros: Simplifying The Complexities
Salesforce Developers
Dig Deeper into WordPress - WD Meetup Cairo
Dig Deeper into WordPress - WD Meetup Cairo
Mohamed Mosaad
[ WrocLoveRb 2012] user perspective testing using ruby
[ WrocLoveRb 2012] user perspective testing using ruby
Mikstura.IT Foundation | Web & Mobile Community
HCE tutorial
HCE tutorial
Chien-Ming Chou
Tendances
(20)
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Desarrollo de módulos en Drupal e integración con dispositivos móviles
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Battista Biggio @ ICML2012: "Poisoning attacks against support vector machines"
Final tagless and cats mtl
Final tagless and cats mtl
SQLAlchemy Seminar
SQLAlchemy Seminar
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
SharePoint Saturday Rhode Island 2013 - A jQuery Primer for SharePoint
JavaScript Objects and OOP Programming with JavaScript
JavaScript Objects and OOP Programming with JavaScript
Google Visualization API
Google Visualization API
Electronic Marketing To Your Fan Base
Electronic Marketing To Your Fan Base
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Ruby-ying Javascript: Avoiding jQuery Spaghetti
Worth the hype - styled components
Worth the hype - styled components
javascript Model- Render & canvas sample
javascript Model- Render & canvas sample
Wells Fargo Outline
Wells Fargo Outline
74 kg greco
74 kg greco
Europea
Europea
[ HackFest.pl 2012] Testing - what for and how
[ HackFest.pl 2012] Testing - what for and how
Xdebug confoo11
Xdebug confoo11
Salesforce Data Models for Pros: Simplifying The Complexities
Salesforce Data Models for Pros: Simplifying The Complexities
Dig Deeper into WordPress - WD Meetup Cairo
Dig Deeper into WordPress - WD Meetup Cairo
[ WrocLoveRb 2012] user perspective testing using ruby
[ WrocLoveRb 2012] user perspective testing using ruby
HCE tutorial
HCE tutorial
Similaire à Beautiful Development ブレイクスルー体験記
JQuery In Rails
JQuery In Rails
Louie Zhao
Dynamic Deployment With Apache Felix
Dynamic Deployment With Apache Felix
Marcel Offermans
Virtual Madness @ Etsy
Virtual Madness @ Etsy
Nishan Subedi
Borrador del blog
Borrador del blog
Sena Cedagro
Creating an Uber Clone - Part XXIV.pdf
Creating an Uber Clone - Part XXIV.pdf
ShaiAlmog1
Creating an Uber Clone - Part IV.pdf
Creating an Uber Clone - Part IV.pdf
ShaiAlmog1
Curso Symfony - Clase 2
Curso Symfony - Clase 2
Javier Eguiluz
Svcc 2013-d3
Svcc 2013-d3
Oswald Campesato
SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)
Oswald Campesato
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
JavaScript Refactoring
JavaScript Refactoring
Krzysztof Szafranek
JavaOne2010 Groovy/Spring Roo
JavaOne2010 Groovy/Spring Roo
Yasuharu Nakano
Version1.0 StartHTML000000232 EndHTML000065057 StartFragment0000.docx
Version1.0 StartHTML000000232 EndHTML000065057 StartFragment0000.docx
tienboileau
WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015
Fernando Daciuk
Bacbkone js
Bacbkone js
Артём Курапов
BDD revolution - or how we came back from hell
BDD revolution - or how we came back from hell
Mateusz Zalewski
Immutable Libraries for React
Immutable Libraries for React
stbaechler
Clean Javascript
Clean Javascript
Ryunosuke SATO
(PHPers Wrocław #5) How to write valuable unit test?
(PHPers Wrocław #5) How to write valuable unit test?
RST Software Masters
circ.db.dbcircleserver(1).py#!usrlocalbinpython3im.docx
circ.db.dbcircleserver(1).py#!usrlocalbinpython3im.docx
christinemaritza
Similaire à Beautiful Development ブレイクスルー体験記
(20)
JQuery In Rails
JQuery In Rails
Dynamic Deployment With Apache Felix
Dynamic Deployment With Apache Felix
Virtual Madness @ Etsy
Virtual Madness @ Etsy
Borrador del blog
Borrador del blog
Creating an Uber Clone - Part XXIV.pdf
Creating an Uber Clone - Part XXIV.pdf
Creating an Uber Clone - Part IV.pdf
Creating an Uber Clone - Part IV.pdf
Curso Symfony - Clase 2
Curso Symfony - Clase 2
Svcc 2013-d3
Svcc 2013-d3
SVCC 2013 D3.js Presentation (10/05/2013)
SVCC 2013 D3.js Presentation (10/05/2013)
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
JavaCro'14 - JCalc Calculations in Java with open source API – Davor Sauer
JavaScript Refactoring
JavaScript Refactoring
JavaOne2010 Groovy/Spring Roo
JavaOne2010 Groovy/Spring Roo
Version1.0 StartHTML000000232 EndHTML000065057 StartFragment0000.docx
Version1.0 StartHTML000000232 EndHTML000065057 StartFragment0000.docx
WordPress Realtime - WordCamp São Paulo 2015
WordPress Realtime - WordCamp São Paulo 2015
Bacbkone js
Bacbkone js
BDD revolution - or how we came back from hell
BDD revolution - or how we came back from hell
Immutable Libraries for React
Immutable Libraries for React
Clean Javascript
Clean Javascript
(PHPers Wrocław #5) How to write valuable unit test?
(PHPers Wrocław #5) How to write valuable unit test?
circ.db.dbcircleserver(1).py#!usrlocalbinpython3im.docx
circ.db.dbcircleserver(1).py#!usrlocalbinpython3im.docx
Dernier
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
Memoori
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Zilliz
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
comworks
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
charlottematthew16
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
Fwdays
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
The Digital Insurer
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Ridwan Fadjar
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Stephanie Beckett
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
Zilliz
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Florian Wilhelm
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Safe Software
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Miki Katsuragi
Dernier
(20)
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Beautiful Development ブレイクスルー体験記
1.
PARTⅢ
http://www.flickr.com/photos/penguinbush/2768719983/
2.
(kentaro714) JavaEE
Clojure IT
3.
Agenda • PartⅢ • • • DDD
4.
PartⅢ
5.
Part1 PartⅡ
ParⅢ
6.
7.
8.
1000
9.
20%
… 1000 30% 50%
10.
500×0.2=100 500
000 500 500 500×0.3=150 500×0.5=250
11.
800 300
300 500 200
12.
13.
*+ $%&'()
*+# !"# ,-.(/#) 01.(/#) 2+ *+78 2+34 /*+# 2+56
14.
200
:%&'()* :+, !"# = 1000$ +,# = 200$ 12A0,:0, -+,./ 0,12 = A12 0,34 = 20% +,# = 40$ 12B0,:0, -+,./ 0,12 = B12 0,34 = 30% +,# = 60$ 12C0,:0, -+,./ 0,12 = C12 0,34 = 50% +,# = 100$
15.
16.
17.
… 500
500×0.2-50=50 50 200 700 500×0.3 500×0.5+50 =150 =300
18.
19.
,-./01
23 !"# 23# $%&'($%(, $%), *+) 45&(6#) 78&(6#) 93 23<= 93:; /23# 93*+ 23$% 23#
20.
:%&'()*
:+, !"# = 1000$ +,# = 700$ 12A0,:0, -+,./ 0,12 = A12 0,34 = 20% +,# = 90$ 12B0,:0, -+,56 0,12 = B12 0,34 = 30% +,# = 150$ 12C0,:0, -+,./ 0,12 = C12 0,34 = 50% +,# = 400$
21.
Application Service public class
SyndicateService { private FacilityRepository facilityRepository; private LoanRepository loanRepository; public void drawDownWithAdjustment(long facilityId, BigDecimal amount, Map<String, BigDecimal> adjustment) { Facility facility = facilityRepository.get(facilityId); Loan loan = facility.getLoan(); for (Investment investment : facility.getInvestments()) { if (adjustment.containsKey(investment.getInvestor().getName())) { BigDecimal share = BigDecimal.valueOf(investment.getPercentage()); BigDecimal variance = adjustment.get(investment.getInvestor() .getName()); LoanAdjustment loanAdjustment = new LoanAdjustment( Money.yen(amount.multiply(share).add(variance))); loan.addLoanInvestment(loanAdjustment); } } loanRepository.save(loan); }
22.
…
23.
24.
500×90/700=64.28.. 500
500 300 800 500×210/700 500×400/700 =150 =285.714...
25.
…
26.
Application Service public class
SyndicateService { private FacilityRepository facilityRepository; private LoanRepository loanRepository; public void processPrincipalPayment(long facilityId, BigDecimal amount) { Facility facility = facilityRepository.get(facilityId); Loan loan = facility.getLoan(); for (LoanInvestment investment : loan.getLoanInvestments()) { BigDecimal share = investment.getAmount().divide(loan.getAmount()); Money newAmount = Money.yen(amount.multiply(share)); LoanAdjustment loanAdjustment = new LoanAdjustment(investment .getAmount().minus(newAmount)); loan.addLoanInvestment(loanAdjustment); } loanRepository.save(loan); }
27.
2
…
28.
…
29.
,-./01
23 !"# 23# $%&'($%(, $%), *+) 45&(6#) 78&(6#) 93 23<= 93:; /23# 93*+ 23$% 23#
30.
31.
32.
33.
34.
:1000
100 20% ¥20 50% 100 ¥30 ¥50 30%
35.
¥70
¥50 ¥20 ¥50 ¥150 ¥180 ¥30 ¥300 ¥350 100 500 600
36.
37.
+,-./
+,- * !"#$(%&) 0121 '(#$('(), '(*, %&) +,-3 7+,-./ 45+,-./ 6#(7+,-./) 89:7+,-./;
38.
78
,-./01 78+ )*+ !"#$(!"%, !"&, '() 23#(4+) 56#(4+) '(.9:;< =.9:;< * * .9: .9: >?@? >?@? .9:A .9:A
39.
Application Service public class
SyndicateService { private FacilityRepository facilityRepository; private LoanRepository loanRepository; public void drawDownWithAdjustment(long facilityId, BigDecimal amount, Map<String, BigDecimal> adjustment) { Facility facility = facilityRepository.get(facilityId); Loan loan = facility.getLoan(); AmountPie drawDownSharePie = facility.getPie().prorate(amount); AmountPie adjustSharePie = AmountPie.createFrom(adjustment); loan.setPie(drawDownSharePie.plus(adjustSharePie)); loanRepository.save(loan); } public void processPrincipalPayment(long facilityId, BigDecimal amount) { Facility facility = facilityRepository.get(facilityId); Loan loan = facility.getLoan(); SharePie principalSharePie = loan.getPie().prorate(amount); loan.setPie(loan.getPie().minus(principalSharePie)); loanRepository.save(loan); }
40.
41.
42.
…
43.
#&'()
!"#$% 12 3#&'() *+#,-. /0 *+#,-. :;<=> BCDE 40 *+#,-. 2789 ?@A<=> 5612 AP
44.
Application Service public void
drawDownWithAdjustment(long facilityId, BigDecimal amount, Map<String, BigDecimal> adjustment) { Facility facility = facilityRepository.findById(facilityId); Loan loan = facility.getLoan(); SharePie drawDownSharePie = facility.getSharePie().prorate(amount); SharePie adjustSharePie = AmountPie.createFrom(adjustment); Transaction drawDown = new DrawDown(loan, drawDownSharePie.plus(adjustSharePie)); loan.apply(drawDown); loanRepository.save(loan); } public void processPrincipalPayment(long facilityId, BigDecimal amount) { Facility facility = facilityRepository.get(facilityId); Loan loan = facility.getLoan(); SharePie principalSharePie = loan.getPie().prorate(amount); Transaction principalPayment = new PrincipalPayment(loan, principalSharePie); loan.apply(principalPayment); loanRepository.save(loan); }
45.
public class DrawDown
extends Transaction { public DrawDown(Position position, SharePie sharePie) { super(position, sharePie); } @Override public void execute() { SharePie newSharePie = position.getPie().plus(this.sharePie); position.setPie(newSharePie); } }
46.
…
47.
#&'()
!"#$% * 12 3#&'() *+#,-. /0 *+#,-. :;<=> BCDE 40
48.
49.
http://www.flickr.com/photos/94379417@N00/4808475862/in/photostream/
50.
http://www.flickr.com/photos/dmclear/5418495331/
51.
http://www.flickr.com/photos/spcbrass/5451894896/
52.
DDD
Notes de l'éditeur
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Télécharger maintenant