/* package whatever; // don't place package name! */
 
import java.util.*;
import java.lang.*;
import java.io.*;
 
import java.time.* ;
 
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
	{
 
    ZoneId z = ZoneId.of( "America/Edmonton" ) ;
    YearMonth currentYm = YearMonth.now( z ) ;
 
    List< YearMonth > yms = new ArrayList<>() ;
    int limit = 3 ; // We want current month plus three previous months. 
    for( int i = 0 ; i <= limit ; i ++ ) {
        YearMonth ym = currentYm.minusMonths( i ) ;
        yms.add( ym ) ;
    }
 
    for( YearMonth ym : yms ) {
        System.
out.
println( "YearMonth: " + ym 
+ " starts: " + ym.
atDay( 1 ) +  " ends: " + ym.
atEndOfMonth() ) ;      }
 
 
	}
}
				LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLiogOwoKLyogTmFtZSBvZiB0aGUgY2xhc3MgaGFzIHRvIGJlICJNYWluIiBvbmx5IGlmIHRoZSBjbGFzcyBpcyBwdWJsaWMuICovCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCiAgICBab25lSWQgeiA9IFpvbmVJZC5vZiggIkFtZXJpY2EvRWRtb250b24iICkgOwogICAgWWVhck1vbnRoIGN1cnJlbnRZbSA9IFllYXJNb250aC5ub3coIHogKSA7CgogICAgTGlzdDwgWWVhck1vbnRoID4geW1zID0gbmV3IEFycmF5TGlzdDw+KCkgOwogICAgaW50IGxpbWl0ID0gMyA7IC8vIFdlIHdhbnQgY3VycmVudCBtb250aCBwbHVzIHRocmVlIHByZXZpb3VzIG1vbnRocy4gCiAgICBmb3IoIGludCBpID0gMCA7IGkgPD0gbGltaXQgOyBpICsrICkgewogICAgICAgIFllYXJNb250aCB5bSA9IGN1cnJlbnRZbS5taW51c01vbnRocyggaSApIDsKICAgICAgICB5bXMuYWRkKCB5bSApIDsKICAgIH0KCiAgICBmb3IoIFllYXJNb250aCB5bSA6IHltcyApIHsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJZZWFyTW9udGg6ICIgKyB5bSArICIgc3RhcnRzOiAiICsgeW0uYXREYXkoIDEgKSArICAiIGVuZHM6ICIgKyB5bS5hdEVuZE9mTW9udGgoKSApIDsgCiAgICB9CiAgICAKICAgIAoJfQp9