Chat with us, powered by LiveChat Dear Experts. pls Bid only if you can HANDLE it . Need original work . ‘NO AI and NO Plagiarism’ This project introduces students to th - Fido Essays

Dear Experts. pls Bid only if you can HANDLE it . Need original work . ‘NO AI and NO Plagiarism’ This project introduces students to th

  Dear Experts. pls Bid only if you can HANDLE it . Need original work . "NO AI and NO Plagiarism"

This project introduces students to the concepts of random signal mixing and source separation through a simplified version of the Cocktail Party Problem. Using MATLAB, you will explore how signals can be mixed using a known matrix, and how they can be recovered using two statistical methods: Principal Component Analysis (PCA) and Independent Component Analysis (ICA).

The project focuses on key probabilistic concepts such as Gaussianity, the Central Limit Theorem (CLT), statistical independence vs. correlation, and the effect of additive white Gaussian noise on signal recovery 

CEN/EEN330 Course Project Title: Signal Mixing and Source Separation Tools: MATLAB Due Date: 4 June 2025

Project Overview

This project introduces students to the concepts of random signal mixing and source separation through a simplified version of the Cocktail Party Problem. Using MATLAB, you will explore how signals can be mixed using a known matrix, and how they can be recovered using two statistical methods: Principal Component Analysis (PCA) and Independent Component Analysis (ICA).

The project focuses on key probabilistic concepts such as Gaussianity, the Central Limit Theorem (CLT), statistical independence vs. correlation, and the effect of additive white Gaussian noise on signal recovery.

Learning Objectives

By completing this project, you will:

· Apply MATLAB to analyze and process noisy signal data.

· Simulate random signal mixing and investigate the role of mixing matrices.

· Understand the impact of Gaussian noise on signal quality and recovery.

· Compare PCA and ICA in terms of their probabilistic assumptions and performance.

· Use histogram analysis, kurtosis, and correlation to interpret results.

Task Breakdown

1. Setup and Signal Mixing

· You will be provided with source signals (.wav files), chose one voice and one music, or get your own from any source (keep them short ~few seconds).

· Load the signals and make sure they are of the same sampling rate.

· Normalize the signals in the range [-1,1] and do the same for each signal at each step to avoide clipping.

· Use a predefined 2×2 mixing matrix to linearly mix the signals.

· Add Gaussian noise to the mixed signals (one level, e.g., PSNR = 20 dB).

2. Signal Recovery

· Apply PCA using MATLAB's built-in functions.

· Apply ICA using MATLAB's fastica() function.

· Save all signals (original, mixed, ICA, PCA) as .wav files.

3. Analysis and Comparison

· Plot waveforms of original, mixed, and separated signals.

· Plot histograms of the recovered signals.

· Calculate Correlation coefficients between original and recovered signals

· Calculate Kurtosis values of the recovered signals

· Use results to explain why ICA can recover original signals, while PCA may fail.

Expected Report Structure

Section 1: Introduction

· Brief explanation of the Cocktail Party Problem

· Purpose of the project in the context of randomness and noise

Section 2: Methodology

· Description of the mixing process and noise addition

· Overview of PCA and ICA techniques

· Tools and MATLAB functions used

Section 3: Results

· Plots of mixed and separated signals

· Histograms and statistical measures (correlation, kurtosis)

· Observations on saved .wav files

Section 4: Discussion

· Why ICA works under the CLT and non-Gaussian assumptions

· Why PCA fails to separate independent sources

· How Gaussian noise affects the recovery process

Section 5: Conclusion

· Summary of findings

· Relevance to course topics in EEN330

Provided Materials

· Source signals in .wav format

· MATLAB starter code for signal loading, mixing, recovery and plotting

· Template for fastica() and PCA implementation

Submission Requirements

· Report.

· MATLAB code (.m files).

· All signals in (.wav files)

MATLAB Starter Code Snippets

Loading a Source Signal

[s1, fs1] = audioread(voice.wav');

Adjust Length of a signal

minLen = min(length(x1), length(x2));

x1 = x1(1:minLen);

Convert a signal to a row vector

x1 = x1(:)';

Normalize a signal to [-1,1]:

x1 = x1 / max(abs(x1));

Combine the voice and music signals

S = [x1; x2];

S = S – mean(S, 2);

S = S ./ std(S, 0, 2);

Mixing and Noise Addition

A = [1 0.5; 0.4 1];

X = A * S;

Add Gaussian Noise

noise_power = 0.01 * var(X, 0, 2); % Adjust scale as needed

noise = sqrt(noise_power) .* randn(size(X));

X_noisy = X + noise;

Apply ICA

r = 2;

[Zica, ~, ~, ~] = fastICA(X_noisy, r);

Apply PCA

[coeff, score, ~] = pca(X_noisy');

pca_sig = score(:,1:2)';

Results Examples

figure;

time = (0:minLen-1) / fs1;

subplot(4,2,5); plot(time, Zica(1,:)); title('Recovered Signal 1 (ICA)');

audiowrite(fullfile(audio_path,'ica_recovered1.wav'), Zica(1,:)', fs1);

fprintf('ICA1 vs Original Voice: %.3fn', corr(Zica(1,:)', S(1,:)'));

fprintf('PCA Signal 1: %.3fn', kurtosis(pca_result(1,:)));

figure;

subplot(4,2,1); histogram(S(1,:), 100); title('Histogram: Original Signal 1');

,

Bibliography.bib

@article{einstein, author = "Albert Einstein", title = "{Zur Elektrodynamik bewegter K{"o}rper}. ({German}) [{On} the electrodynamics of moving bodies]", journal = "Annalen der Physik", volume = "322", number = "10", pages = "891–921", year = "1905", DOI = "http://dx.doi.org/10.1002/andp.19053221004" } @book{latexcompanion, author = "Michel Goossens and Frank Mittelbach and Alexander Samarin", title = "The LaTeX Companion", year = "1993", publisher = "Addison-Wesley", address = "Reading, Massachusetts" } @misc{knuthwebsite, author = "Donald Knuth", title = "Knuth: Computers and Typesetting", url = "http://www-cs-faculty.stanford.edu/~{}uno/abcde.html" } @article{M1, title={A fast electro-thermal co-simulation modeling approach for SiC power MOSFETs}, DOI={10.1109/apec.2017.7930813}, journal={2017 IEEE Applied Power Electronics Conference and Exposition (APEC)}, author={Ceccarelli, Lorenzo and Bahman, Amir Sajjad and Iannuzzo, Francesco and Blaabjerg, Frede}, year={2017} } @electronic{biblatex, author = "Philipp Lehman", title = "The biblatex package", url = "http://www.ctan.org/tex-archive/macros/latex/exptl/biblatex/", month = apr, year = "2008" } @book{book_typical, author = "B. D. Cullity", title = "Introduction to Magnetic Materials", publisher = "Addison-Wesley", address = "Reading, MA", year = "1972" } @article{IEEEexample:TBParticle, author = "N. Kahale and R. Urbanke", title = "On the Minimum Distance of Parallel and Serially Concatenated Codes", journal = "IEEE_J_IT", year = "submitted for publication" }

IEEEexample.bib

IEEEexample.bib V1.13 (2008/09/30) Copyright (c) 2002-2008 by Michael Shell See: http://www.michaelshell.org/ for current contact information. This is an example BibTeX database for the official IEEEtran.bst BibTeX style file. Some entries call strings that are defined in the IEEEabrv.bib file. Therefore, IEEEabrv.bib should be loaded prior to this file. Usage: bibliographystyle{./IEEEtran} bibliography{./IEEEabrv,./IEEEexample} Support sites: http://www.michaelshell.org/tex/ieeetran/ http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/ and/or http://www.ieee.org/ ************************************************************************* Legal Notice: This code is offered as-is without any warranty either expressed or implied; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE! User assumes all risk. In no event shall IEEE or any contributor to this code be liable for any damages or losses, including, but not limited to, incidental, consequential, or any other damages, resulting from the use or misuse of any information contained here. All comments are the opinions of their respective authors and are not necessarily endorsed by the IEEE. This work is distributed under the LaTeX Project Public License (LPPL) ( http://www.latex-project.org/ ) version 1.3, and may be freely used, distributed and modified. A copy of the LPPL, version 1.3, is included in the base LaTeX documentation of all distributions of LaTeX released 2003/12/01 or later. Retain all contribution notices and credits. ** Modified files should be clearly indicated as such, including ** ** renaming them and changing author support contact information. ** File list of work: IEEEabrv.bib, IEEEfull.bib, IEEEexample.bib, IEEEtran.bst, IEEEtranS.bst, IEEEtranSA.bst, IEEEtranN.bst, IEEEtranSN.bst, IEEEtran_bst_HOWTO.pdf ************************************************************************* Note that, because the example references were taken from actual IEEE publications, these examples do not always contain the full amount of information that may be desirable (for use with other BibTeX styles). In particular, full names (not abbreviated with initials) should be entered whenever possible as some (non-IEEE) bibliography styles use full names. IEEEtran.bst will automatically abbreviate when it encounters full names. references for the IEEEtran.bst documentation IEEEtran homepage @electronic{IEEETranHomePage, author = "Michael Shell", title = "{IEEE}tran {H}omepage", url = "http://www.michaelshell.org/tex/ieeetran/", year = "2008" } the distribution site for IEEEtran.bst @electronic{IEEEexample:shellCTANpage, author = "Michael Shell", title = "{IEEE}tran Webpage on {CTAN}", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/", year = "2008" } the IEEE website sort key is needed for sorting styles @electronic{IEEEexample:IEEEwebsite, title = "The {IEEE} Website", url = "http://www.ieee.org/", year = "2008", key = "IEEE" } The BibTeX user's guide. The filename could have been put in the URL instead. But, there might be other interesting things for the user in the same directory – and the filename might change before the directory that contains it. @electronic{IEEEexample:bibtexuser, author = "Oren Patashnik", title = "{{BibTeX}}ing", howpublished = "{btxdoc.pdf}", url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/", month = feb, year = "1988" } The BibTeX style designer's guide. @electronic{IEEEexample:bibtexdesign, author = "Oren Patashnik", title = "Designing {{BibTeX}} Styles", howpublished = "{btxhak.pdf}", url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/", month = feb, year = "1988" } A comprehensive BibTeX tutorial. @electronic{IEEEexample:tamethebeast, author = "Nicolas Markey", title = "Tame the BeaST — The B to X of {{BibTeX}}", url = "http://tug.ctan.org/tex-archive/info/bibtex/tamethebeast/", month = oct, year = "2005" } The BibTeX Tips and FAQ guide. @electronic{IEEEexample:bibtexFAQ, author = "David Hoadley and Michael Shell", title = "{{BibTeX}} Tips and {FAQ}", howpublished = "{btxFAQ.pdf}", url = "http://www.ctan.org/tex-archive/biblio/bibtex/contrib/doc/", month = jan, year = "2007" } The TeX FAQ @electronic{IEEEexample:texfaq, author = "Robin Fairbairns", title = "The {{TeX}} {FAQ}", url = "http://www.tex.ac.uk/cgi-bin/texfaq2html/", month = jun, year = "2008" } A BibTeX Guide via Examples. @electronic{IEEEexample:bibtexguide, author = "Ki-Joo Kim", title = "A {{BibTeX}} Guide via Examples", howpublished = "{bibtex_guide.pdf}", url = "http://www.geocities.com/kijoo2000/", month = apr, year = "2004" } TeX User Group Bibliography Archive @electronic{IEEEexample:beebe_archive, author = "Nelson H. F. Beebe", title = "{{TeX}} User Group Bibliography Archive", url = "http://www.math.utah.edu/pub/tex/bib/index-table.html", month = jul, year = "2008" } The natbib.sty package. @electronic{ctan:natbib, author = "Patrick W. Daly", title = "The natbib.sty package", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/natbib/", month = oct, year = "2007" } The url.sty package. @electronic{IEEEexample:urlsty, author = "Donald Arseneau", title = "The url.sty Package", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/misc/", month = apr, year = "2006", } The hyperref.sty package. @electronic{IEEEexample:hyperrefsty, author = "Sebastian Rahtz and Heiko Oberdiek", title = "The hyperref.sty Package", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/hyperref/", month = sep, year = "2008", } The breakurl.sty package. @electronic{IEEEexample:breakurl, author = "Vilar Camara Neto", title = "The breakurl.sty Package", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/breakurl/", month = jul, year = "2008", } The Babel package. @electronic{IEEEexample:babel, author = "Johannes Braams", title = "The Babel Package", url = "http://www.ctan.org/tex-archive/macros/latex/required/babel/", month = jul, year = "2008", } The multibib package. @electronic{IEEEexample:multibibsty, author = "Thorsten Hansen", title = "The multibib.sty package", url = "http://www.ctan.org/tex-archive/macros/latex/contrib/multibib/", month = jan, year = "2004" } The biblatex package. @electronic{IEEEexample:biblatex, author = "Philipp Lehman", title = "The biblatex package", url = "http://www.ctan.org/tex-archive/macros/latex/exptl/biblatex/", month = apr, year = "2008" } The three most common and typical types of references used in IEEE publications: an article in a journal Note the use of the IEEE_J_EDL string, defined in the IEEEabrv.bib file, for the journal name. IEEEtran.bst defines the BibTeX standard three letter month codes per IEEE style. From the June 2002 issue of "IEEE Transactions on Electron Devices", page 996, reference #16. @article{IEEEexample:article_typical, author = "S. Zhang and C. Zhu and J. K. O. Sin and P. K. T. Mok", title = "A Novel Ultrathin Elevated Channel Low-temperature Poly-{Si} {TFT}", journal = "IEEE_J_EDL", volume = "20", month = nov, year = "1999", pages = "569-571" } journal article using et al. The (five) authors are actually: F. Delorme, S. Slempkes, G. Alibert, B. Rose, J. Brandon The month (July) was not given here. From the September 1998 issue of "IEEE Journal on Selected Areas in Communications", page 1257, reference #28. @article{IEEEexample:articleetal, author = "F. Delorme and others", title = "Butt-jointed {DBR} Laser With 15 {nm} Tunability Grown in Three {MOVPE} Steps", journal = "Electron. Lett.", volume = "31", number = "15", year = "1995", pages = "1244-1245" } a paper in a conference proceedings "conference" can be used as an alias for "inproceedings" From the June 2002 issue of "Journal of Microelectromechanical Systems", page 205, reference #16. @inproceedings{IEEEexample:conf_typical, author = "R. K. Gupta and S. D. Senturia", title = "Pull-in Time Dynamics as a Measure of Absolute Pressure", booktitle = "Proc. {IEEE} International Workshop on Microelectromechanical Systems ({MEMS}'97)", address = "Nagoya, Japan", month = jan, year = "1997", pages = "290-294" } a book From the May 2002 issue of "IEEE Transactions on Magnetics", page 1466, reference #4. @book{IEEEexample:book_typical, author = "B. D. Cullity", title = "Introduction to Magnetic Materials", publisher = "Addison-Wesley", address = "Reading, MA", year = "1972" } Other examples journal article with large page numbers, IEEE will divide numbers 5 digits or longer into groups of three with small spaces between them. Page ranges can be separated via either "-" or "–", IEEEtran.bst will automatically convert the separator dash(es) to "–". Authors and/or IEEE do not always provide/use the journal number, but it was used in this case. IEEEtran.bst can be configured to ignore journal numbers if desired. From the August 2000 issue of "IEEE Photonics Technology Letters", page 1039, reference #11. @article{IEEEexample:articlelargepages, author = "A. Castaldini and A. Cavallini and B. Fraboni and P. Fernandez and J. Piqueras", title = "Midgap Traps Related to Compensation Processes in {CdTe} Alloys", journal = "Phys. Rev. B.", volume = "56", number = "23", year = "1997", pages = "14897-14900" } journal article with dual months use the BibTeX "#" concatenation operator From the March 2002 issue of "IEEE Transactions on Mechatronics", page 21, reference #8. @article{IEEEexample:articledualmonths, author = "Y. Okada and K. Dejima and T. Ohishi", title = "Analysis and Comparison of {PM} Synchronous Motor and Induction Motor Type Magnetic Bearings", journal = IEEE_J_IA, volume = "31", month = sep # "/" # oct, year = "1995", pages = "1047-1053" } journal article to be published as a misc entry type date information like month and year is optional However, the article form like that below may be a better approach. From the May 2002 issue of "IEEE Journal of Selected Areas in Communication", page 725, reference #3. @misc{IEEEexample:TBPmisc, author = "M. Coates and A. Hero and R. Nowak and B. Yu", title = "Internet Tomography", howpublished = IEEE_M_SP, month = may, year = "2002", note = "to be published" } journal article to be published as an article entry type year is required, so if absent, use the year field to hold the "submitted for publication" in order to avoid a warning for the missing year field. From the June 2002 issue of "IEEE Transactions on Information Theory", page 1461, reference #21. @article{IEEEexample:TBParticle, author = "N. Kahale and R. Urbanke", title = "On the Minimum Distance of Parallel and Serially Concatenated Codes", journal = "IEEE_J_IT", year = "submitted for publication" } book with editor and no author From the June 2002 issue of "IEEE Transactions on Information Theory", page 1725, reference #1. @book{IEEEexample:bookwitheditor, editor = "J. C. Candy and G. C. Temes", title = "Oversampling Delta-Sigma Data Converters Theory, Design and Simulation", publisher = "{IEEE} Press.", address = "New York", year = "1992" } book with edition, author and editor Note that the standard BibTeX styles do not support book entries with both author and editor fields, but IEEEtran.bst does. The standard BibTeX way of specifying the edition is to use capitalized ordinal words such as "First", "Second", etc. Most .bst files can convert up to about "Fifth" into the format needed. IEEEtran.bst can convert up to "Tenth" to the "Arabic ordinal" form IEEE uses (e.g., "10th"). For editions over the tenth, it is best to use the "Arabic ordinal" form for IEEE related work (e.g., "101st") Note how "Jr." has to be entered. From the May 2002 issue of "Journal of Lightwave Technology", page 856, reference #17. @book{IEEEexample:book, author = "S. M. Metev and V. P. Veiko", editor = "Osgood, Jr., R. M.", title = "Laser Assisted Microtechnology", edition = "Second", publisher = "Springer-Verlag", address = "Berlin, Germany", year = "1998" } book with series and volume From the January 2000 issue of "IEEE Transactions on Communications", page 11, reference #31. @book{IEEEexample:bookwithseriesvolume, editor = "J. Breckling", title = "The Analysis of Directional Time Series: Applications to Wind Speed and Direction", series = "Lecture Notes in Statistics", publisher = "Springer", address = "Berlin, Germany", year = "1989", volume = "61" } inbook with chapter number. The pages field could also have been given. The chapter number could be changed to something else such as a section number via the type field: type = "sec.". From the May 2002 issue of "IEEE Transactions on Circuits and Systems—I: Fundamental Applications and Theory", page 638, reference #22. @inbook{IEEEexample:inbook, author = "H. E. Rose", title = "A Course in Number Theory", publisher = "Oxford Univ. Press", address = "New York, NY", url = "http://www.ctan.org/texarchive/macros/latex/contrib/IEEEtran/", year = "1988", chapter = "3" } inbook with pages and note. The language field is not set to Russian because the title is presented here in its translated, English, form. From the May 2002 issue of "IEEE Transactions on Magnetics", page 1533, reference #5. @inbook{IEEEexample:inbookpagesnote, author = "B. K. Bul", title = "Theory Principles and Design of Magnetic Circuits", publisher = "Energia Press", address = "Moscow", year = "1964", pages = "464", note = "(in Russian)" } incollection with author and editor From the May 2002 issue of "Journal of Lightwave Technology", page 807, reference #7. @incollection{IEEEexample:incollection, author = "W. V. Sorin", editor = "D. Derickson", title = "Optical Reflectometry for Component Characterization", booktitle = "Fiber Optic Test and Measurement", publisher = "Prentice-Hall", address = "Englewood Cliffs, NJ", year = "1998" } incollection with series From the April 2000 issue of "IEEE Transactions on Communication", page 609, reference #3. @incollection{IEEEexample:incollectionwithseries, author = "J. B. Anderson and K. Tepe", title = "Properties of the Tailbiting {BCJR} Decoder", booktitle = "Codes, Systems and Graphical Models", series = "{IMA} Volumes in Mathematics and Its Applications", publisher = "Springer-Verlag", address = "New York", year = "2000" } incollection with author, editor, chapter and pages From the January 2000 issue of "IEEE Transactions on Communications", page 16, reference #9. @incollection{IEEEexample:incollection_chpp, author = "P. Hedelin and P. Knagenhjelm and M. Skoglund", editor = "W. B. Kleijn and K. K. Paliwal", title = "Theory for Transmission of Vector Quantization Data", booktitle = "Speech Coding and Synthesis", publisher = "Elsevier Science", address = "Amsterdam, The Netherlands", year = "1995", chapter = "10", pages = "347-396" } incollection with a large number of authors, some authors/journals will use et al. for so many names. IEEEtran.bst can be configured to do this if desired, or "R. M. A. Dawson and others" can be used instead. Note that IEEE may not include the publisher for incollection entries – IEEEtran.bst will not issue a warning if the publisher is missing for incollections – but other .bst files often will. From the June 2002 issue of "IEEE Transactions on Electron Devices", page 996, reference #12. @incollection{IEEEexample:incollectionmanyauthors, author = "R. M. A. Dawson and Z. Shen and D. A. Furst and S. Connor and J. Hsu and M. G. Kane and R. G. Stewart and A. Ipri and C. N. King and P. J. Green and R. T. Flegal and S. Pearson and W. A. Barrow and E. Dickey and K. Ping and C. W. Tang and S. Van. Slyke and F. Chen and J. Shi and J. C. Sturm and M. H. Lu", title = "Design of an Improved Pixel for a Polysilicon Active-Matrix Organic {LED} Display", booktitle = "{SID} Tech. Dig.", volume = "29", year = "1998", pages = "11-14" } A Motorola data book as a manual It is somewhat unusual to include the data book part number. in the title. It might be more correct to put this information in the howpublished field instead. From the December 2000 issue of "IEEE Transactions on Communications", page 1986, reference #10. @manual{IEEEexample:motmanual, title = "{FLEXChip} Signal Processor ({MC68175/D})", organization = "Motorola", year = "1996" } same reference, but using IEEEtran's howpublished extension @manual{IEEEexample:motmanualhowpub, title = "{FLEXChip} Signal Processor", howpublished = "{MC68175/D}", organization = "Motorola", year = "1996" } conference paper with an address and days. Some journals capitalize the letters in "Globecom", this one did not. From the May 2002 issue of "IEEE Transactions on Communications", page 697, reference #12. @inproceedings{IEEEexample:confwithadddays, author = "M. S. Yee and L. Hanzo", title = "Radial Basis Function Decision Feedback Equaliser Assisted Burst-by-burst Adaptive Modulation", booktitle = "Proc. {IEEE} Globecom '99", address = "Rio de Janeiro, Brazil", month = dec # " 5–9,", year = "1999", pages = "2183-2187" } conference paper with volume number. A conference proceedings with a vol number is a little uncommon, note that the vol number is placed before the address in the formatted bibliography entry From the April 2002 issue of "IEEE/ACM Transactions on Networking", page 181, reference #26. @inproceedings{IEEEexample:confwithvolume, author = "M. Yajnik and S. B. Moon and J. Kurose and D. Towsley", title = "Measurement and Modeling of the Temporal Dependence in Packet Loss", booktitle = "Proc. {IEEE} {INFOCOM}'99", volume = "1", address = "New York, NY", month = mar, year = "1999", pages = "345-352" } conference paper with a paper number, the type field can be used to override the word "paper", e.g., type = "postdeadline paper". A type can be given even without a paper field. Also, IEEEtran.bst can be configured to ignore paper numbers and types. From the May 2002 issue of "Journal of Lightwave Technology", page 807, reference #4. @inproceedings{IEEEexample:confwithpaper, author = "M. Wegmuller and J. P. von der Weid and P. Oberson and N. Gisin", title = "High Resolution Fiber Distributed Measurements With Coherent {OFDR}", booktitle = "Proc. {ECOC}'00", year = "2000", paper = "11.3.4", pages = "109" } conference paper with a postdeadline type paper, the paper field is optional. From the August 2000 issue of "IEEE Photon

Are you struggling with this assignment?

Our team of qualified writers will write an original paper for you. Good grades guaranteed! Complete paper delivered straight to your email.

Place Order Now