├── Chapter01 └── Figure1-1.png ├── Chapter02 ├── Figure2-1.png ├── Figure2-10.png ├── Figure2-11.png ├── Figure2-12.png ├── Figure2-13.png ├── Figure2-14.png ├── Figure2-15.png ├── Figure2-16.png ├── Figure2-17.png ├── Figure2-18.png ├── Figure2-19.png ├── Figure2-2.png ├── Figure2-20.png ├── Figure2-21.png ├── Figure2-22.png ├── Figure2-23.png ├── Figure2-24.png ├── Figure2-25.png ├── Figure2-26.png ├── Figure2-27.png ├── Figure2-28.png ├── Figure2-29.png ├── Figure2-3.png ├── Figure2-30.png ├── Figure2-31.png ├── Figure2-32.png ├── Figure2-33.png ├── Figure2-34.png ├── Figure2-35.png ├── Figure2-36.png ├── Figure2-37.png ├── Figure2-38.png ├── Figure2-39.png ├── Figure2-4.png ├── Figure2-40.png ├── Figure2-41.png ├── Figure2-42.png ├── Figure2-5.png ├── Figure2-6.png ├── Figure2-7.png ├── Figure2-8.png ├── Figure2-9.png ├── atmdefs.sql └── atmlocations.sql ├── Chapter03 ├── Figure3-1.png ├── Figure3-10.png ├── Figure3-11.png ├── Figure3-12.png ├── Figure3-13.png ├── Figure3-14.png ├── Figure3-15.png ├── Figure3-16.png ├── Figure3-17.png ├── Figure3-18.png ├── Figure3-19.png ├── Figure3-2.png ├── Figure3-20.png ├── Figure3-21.png ├── Figure3-3.png ├── Figure3-4.png ├── Figure3-5.png ├── Figure3-6.png ├── Figure3-7.png ├── Figure3-8.png ├── Figure3-9.png ├── NodeJS_Angular_Script.sh └── node-api │ ├── app.js │ ├── bin │ └── www │ ├── package-lock.json │ ├── package.json │ ├── public │ ├── index.html │ ├── javascripts │ │ └── app.js │ └── stylesheets │ │ └── style.css │ ├── queries.js │ ├── routes │ ├── index.js │ └── users.js │ ├── test │ └── test.js │ └── views │ ├── error.jade │ ├── index.jade │ └── layout.jade ├── Chapter04 ├── Django_Script.sh ├── Figure4-1.png ├── Figure4-10.png ├── Figure4-11.png ├── Figure4-12.png ├── Figure4-13.png ├── Figure4-14.png ├── Figure4-15.png ├── Figure4-16.png ├── Figure4-17.png ├── Figure4-18.png ├── Figure4-19.png ├── Figure4-2.png ├── Figure4-20.png ├── Figure4-21.png ├── Figure4-22.png ├── Figure4-3.png ├── Figure4-4.png ├── Figure4-5.png ├── Figure4-6.png ├── Figure4-7.png ├── Figure4-8.png └── Figure4-9.png ├── Chapter05 ├── Figure5-1.png ├── Figure5-10.png ├── Figure5-11.png ├── Figure5-12.png ├── Figure5-13.png ├── Figure5-14.png ├── Figure5-15.png ├── Figure5-16.png ├── Figure5-17.png ├── Figure5-18.png ├── Figure5-19.png ├── Figure5-2.png ├── Figure5-20.png ├── Figure5-21.png ├── Figure5-22.png ├── Figure5-3.png ├── Figure5-4.png ├── Figure5-5.png ├── Figure5-6.png ├── Figure5-7.png ├── Figure5-8.png ├── Figure5-9.png ├── PostGIS Installation on AWS.sql ├── QGIS queries.sql └── zipcoordinates.sql ├── Chapter06 ├── Currencies.sql ├── FX-Schema.sql ├── Figure6-1.png ├── Figure6-10.png ├── Figure6-11.png ├── Figure6-12.png ├── Figure6-13.png ├── Figure6-14.png ├── Figure6-15.png ├── Figure6-16.png ├── Figure6-17.png ├── Figure6-18.png ├── Figure6-19.png ├── Figure6-2.png ├── Figure6-20.png ├── Figure6-21.png ├── Figure6-22.png ├── Figure6-23.png ├── Figure6-24.png ├── Figure6-25.png ├── Figure6-26.png ├── Figure6-27.png ├── Figure6-28.png ├── Figure6-29.png ├── Figure6-3.png ├── Figure6-30.png ├── Figure6-31.png ├── Figure6-32.png ├── Figure6-33.png ├── Figure6-34.png ├── Figure6-35.png ├── Figure6-36.png ├── Figure6-37.png ├── Figure6-38.png ├── Figure6-39.png ├── Figure6-4.png ├── Figure6-40.png ├── Figure6-41.png ├── Figure6-42.png ├── Figure6-5.png ├── Figure6-6.png ├── Figure6-7.png ├── Figure6-8.png ├── Figure6-9.png ├── Script 1 - Docker.sh ├── Script 10 - Expiration token.sh ├── Script 11 - User revocation.sql ├── Script 12 - Revocation token.sh ├── Script 13 - PostgREST as a service.sh ├── Script 2 - PostgREST binary release.sh ├── Script 3 - User Role.sql ├── Script 4 - Configuration file.sh ├── Script 5 - Basic API.sh ├── Script 6 - Add a Trusted User.sql ├── Script 7 - Make a Secret.sh ├── Script 8 - Successful insertion.sh ├── Script 9 - Expiration epoch.sql ├── USDCAD_Jan2020_Jun2020.sql ├── USDEUR_Jan2020_Jun2020.sql └── USDGBP_Jan2020_Jun2020.sql ├── Chapter07 ├── Figure7-1.png ├── Figure7-10.png ├── Figure7-11.png ├── Figure7-12.png ├── Figure7-13.png ├── Figure7-14.png ├── Figure7-15.png ├── Figure7-16.png ├── Figure7-17.png ├── Figure7-18.png ├── Figure7-19.png ├── Figure7-2.png ├── Figure7-20.png ├── Figure7-21.png ├── Figure7-22.png ├── Figure7-23.png ├── Figure7-24.png ├── Figure7-25.png ├── Figure7-26.png ├── Figure7-27.png ├── Figure7-28.png ├── Figure7-29.png ├── Figure7-3.png ├── Figure7-30.png ├── Figure7-31.png ├── Figure7-32.png ├── Figure7-33.png ├── Figure7-34.png ├── Figure7-35.png ├── Figure7-36.png ├── Figure7-37.png ├── Figure7-38.png ├── Figure7-39.png ├── Figure7-4.png ├── Figure7-40.png ├── Figure7-41.png ├── Figure7-42.png ├── Figure7-43.png ├── Figure7-44.png ├── Figure7-5.png ├── Figure7-6.png ├── Figure7-7.png ├── Figure7-8.png ├── Figure7-9.png ├── main.tf └── postgresdata.yml ├── Chapter09 ├── Figure9-1.png ├── Figure9-10.png ├── Figure9-11.png ├── Figure9-12.png ├── Figure9-13.png ├── Figure9-14.png ├── Figure9-15.png ├── Figure9-16.png ├── Figure9-17.png ├── Figure9-18.png ├── Figure9-19.png ├── Figure9-2.png ├── Figure9-20.png ├── Figure9-21.png ├── Figure9-22.png ├── Figure9-23.png ├── Figure9-24.png ├── Figure9-25.png ├── Figure9-26.png ├── Figure9-27.png ├── Figure9-28.png ├── Figure9-29.png ├── Figure9-3.png ├── Figure9-30.png ├── Figure9-31.png ├── Figure9-32.png ├── Figure9-33.png ├── Figure9-34.png ├── Figure9-35.png ├── Figure9-36.png ├── Figure9-37.png ├── Figure9-38.png ├── Figure9-39.png ├── Figure9-4.png ├── Figure9-40.png ├── Figure9-5.png ├── Figure9-6.png ├── Figure9-7.png ├── Figure9-8.png └── Figure9-9.png ├── LICENSE └── README.md /Chapter01/Figure1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter01/Figure1-1.png -------------------------------------------------------------------------------- /Chapter02/Figure2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-1.png -------------------------------------------------------------------------------- /Chapter02/Figure2-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-10.png -------------------------------------------------------------------------------- /Chapter02/Figure2-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-11.png -------------------------------------------------------------------------------- /Chapter02/Figure2-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-12.png -------------------------------------------------------------------------------- /Chapter02/Figure2-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-13.png -------------------------------------------------------------------------------- /Chapter02/Figure2-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-14.png -------------------------------------------------------------------------------- /Chapter02/Figure2-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-15.png -------------------------------------------------------------------------------- /Chapter02/Figure2-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-16.png -------------------------------------------------------------------------------- /Chapter02/Figure2-17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-17.png -------------------------------------------------------------------------------- /Chapter02/Figure2-18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-18.png -------------------------------------------------------------------------------- /Chapter02/Figure2-19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-19.png -------------------------------------------------------------------------------- /Chapter02/Figure2-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-2.png -------------------------------------------------------------------------------- /Chapter02/Figure2-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-20.png -------------------------------------------------------------------------------- /Chapter02/Figure2-21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-21.png -------------------------------------------------------------------------------- /Chapter02/Figure2-22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-22.png -------------------------------------------------------------------------------- /Chapter02/Figure2-23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-23.png -------------------------------------------------------------------------------- /Chapter02/Figure2-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-24.png -------------------------------------------------------------------------------- /Chapter02/Figure2-25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-25.png -------------------------------------------------------------------------------- /Chapter02/Figure2-26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-26.png -------------------------------------------------------------------------------- /Chapter02/Figure2-27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-27.png -------------------------------------------------------------------------------- /Chapter02/Figure2-28.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-28.png -------------------------------------------------------------------------------- /Chapter02/Figure2-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-29.png -------------------------------------------------------------------------------- /Chapter02/Figure2-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-3.png -------------------------------------------------------------------------------- /Chapter02/Figure2-30.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-30.png -------------------------------------------------------------------------------- /Chapter02/Figure2-31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-31.png -------------------------------------------------------------------------------- /Chapter02/Figure2-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-32.png -------------------------------------------------------------------------------- /Chapter02/Figure2-33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-33.png -------------------------------------------------------------------------------- /Chapter02/Figure2-34.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-34.png -------------------------------------------------------------------------------- /Chapter02/Figure2-35.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-35.png -------------------------------------------------------------------------------- /Chapter02/Figure2-36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-36.png -------------------------------------------------------------------------------- /Chapter02/Figure2-37.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-37.png -------------------------------------------------------------------------------- /Chapter02/Figure2-38.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-38.png -------------------------------------------------------------------------------- /Chapter02/Figure2-39.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-39.png -------------------------------------------------------------------------------- /Chapter02/Figure2-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-4.png -------------------------------------------------------------------------------- /Chapter02/Figure2-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-40.png -------------------------------------------------------------------------------- /Chapter02/Figure2-41.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-41.png -------------------------------------------------------------------------------- /Chapter02/Figure2-42.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-42.png -------------------------------------------------------------------------------- /Chapter02/Figure2-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-5.png -------------------------------------------------------------------------------- /Chapter02/Figure2-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-6.png -------------------------------------------------------------------------------- /Chapter02/Figure2-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-7.png -------------------------------------------------------------------------------- /Chapter02/Figure2-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-8.png -------------------------------------------------------------------------------- /Chapter02/Figure2-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter02/Figure2-9.png -------------------------------------------------------------------------------- /Chapter02/atmdefs.sql: -------------------------------------------------------------------------------- 1 | CREATE SEQUENCE public."ATM locations_ID_seq" 2 | INCREMENT 1 3 | START 658 4 | MINVALUE 1 5 | MAXVALUE 2147483647 6 | CACHE 1; 7 | 8 | ALTER SEQUENCE public."ATM locations_ID_seq" 9 | OWNER TO dba; 10 | 11 | GRANT ALL ON SEQUENCE public."ATM locations_ID_seq" TO dba; 12 | 13 | CREATE TABLE public."ATM locations" 14 | ( 15 | "ID" integer NOT NULL DEFAULT nextval('"ATM locations_ID_seq"'::regclass), 16 | "BankName" character varying(60) COLLATE pg_catalog."default" NOT NULL, 17 | "Address" character varying(50) COLLATE pg_catalog."default" NOT NULL, 18 | "County" character varying(15) COLLATE pg_catalog."default" NOT NULL, 19 | "City" character varying(15) COLLATE pg_catalog."default" NOT NULL, 20 | "State" character(2) COLLATE pg_catalog."default" NOT NULL, 21 | "ZipCode" integer NOT NULL, 22 | CONSTRAINT "ATM locations_pkey" PRIMARY KEY ("ID") 23 | ) 24 | 25 | TABLESPACE pg_default; 26 | 27 | ALTER TABLE public."ATM locations" 28 | OWNER to dba; 29 | 30 | GRANT ALL ON TABLE public."ATM locations" TO dba; 31 | 32 | COMMENT ON TABLE public."ATM locations" 33 | IS 'ATM locations of New York city'; 34 | -------------------------------------------------------------------------------- /Chapter02/atmlocations.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO public."ATM locations"("BankName","Address","County","City","State","ZipCode") 2 | VALUES('Wells Fargo ATM','500 W 30 STREET','New York','New York','NY',1000), 3 | ('JPMorgan Chase Bank, National Association','1260 Broadway','New York','New York','NY',10001), 4 | ('Sterling National Bank of New York','1261 Fifth Avenue','New York','New York','NY',10001), 5 | ('Bank of America N.A. GA1-006-15-40','1293 Broadway','New York','New York','NY',10001), 6 | ('Bank of Hope','16 West 32nd Street','New York','New York','NY',10001), 7 | ('TD Bank N.A.','200 West 26th Street','New York','New York','NY',10001), 8 | ('Citibank N. A.','201 West 34th Street','New York','New York','NY',10001), 9 | ('Capital One, N.A.','215 West 34th Street','New York','New York','NY',10001), 10 | ('Citibank N. A.','22 West 32nd Street','New York','New York','NY',10001), 11 | ('Sterling National Bank of New York','227 West 27th Street','New York','New York','NY',10001), 12 | ('JPMorgan Chase Bank, National Association','245 Seventh Avenue','New York','New York','NY',10001), 13 | ('Amalgamated Bank','275 Seventh Avenue','New York','New York','NY',10001), 14 | ('JPMorgan Chase Bank, National Association','305 Seventh Avenue','New York','New York','NY',10001), 15 | ('Woori America Bank','330 Fifth Avenue','New York','New York','NY',10001), 16 | ('Commerce Bank, N.A.','341 Ninth Avenue','New York','New York','NY',10001), 17 | ('TD Bank N.A.','350 West 31st Street','New York','New York','NY',10001), 18 | ('USAlliance Financial','350 West 31st Street','New York','New York','NY',10001), 19 | ('Bank of America N.A. GA1-006-15-40','358 Fifth Avenue','New York','New York','NY',10001), 20 | ('Sterling National Bank of New York','406 West 31st Street','New York','New York','NY',10001), 21 | ('Sterling National Bank of New York','7 Penn Plaza','New York','New York','NY',10001), 22 | ('Bank of America N.A. GA1-006-15-40','800 Avenue of the Americas','New York','New York','NY',10001), 23 | ('HSBC Bank USA, National Association','800 Avenue of the Americas','New York','New York','NY',10001), 24 | ('TD Bank N.A.','885 Sixth Avenue','New York','New York','NY',10001), 25 | ('BankUnited, NA','960 Avenue of the Americas','New York','New York','NY',10001), 26 | ('TD Bank N.A.','Five Penn Plaza','New York','New York','NY',10001), 27 | ('JPMorgan Chase Bank, National Association','109 Delancy Street','New York','New York','NY',10002), 28 | ('First American International Bank','123 EAST BROADWAY','New York','New York','NY',10002), 29 | ('Banco Popular North America','134 Delancy Street','New York','New York','NY',10002), 30 | ('Cathay Bank','16-18 East Broadway','New York','New York','NY',10002), 31 | ('First American International Bank','240 Grand Street','New York','New York','NY',10002), 32 | ('First American International Bank','29 Bowery','New York','New York','NY',10002), 33 | ('HSBC Bank USA, National Association','307 Grand Street','New York','New York','NY',10002), 34 | ('Banco Popular North America','310 Houston Street','New York','New York','NY',10002), 35 | ('TD Bank N.A.','314 Grand Street','New York','New York','NY',10002), 36 | ('Bank of America N.A. GA1-006-15-40','318 Grand Street','New York','New York','NY',10002), 37 | ('Citibank N. A.','411 Grand Street','New York','New York','NY',10002), 38 | ('Apple Bank For Savings','465 Grand Street','New York','New York','NY',10002), 39 | ('East West Bank','77 Bowery','New York','New York','NY',10002), 40 | ('Bank of America N.A. GA1-006-15-40','92 Delancey Street','New York','New York','NY',10002), 41 | ('Valley National Bank','93 Canal Street','New York','New York','NY',10002), 42 | ('Amalgamated Bank','10 East 14th Street','New York','New York','NY',10003), 43 | ('Wells Fargo ATM','104 EAST 14TH STREET','New York','New York ','NY',10003), 44 | ('Apple Bank For Savings','105 Second Avenue','New York','New York','NY',10003), 45 | ('Valley National Bank','111 Fourth Avenue','New York','New York','NY',10003), 46 | ('HSBC Bank USA, National Association','143 Second Avenue','New York','New York','NY',10003), 47 | ('HSBC Bank USA, National Association','15 Union Square West','New York','New York','NY',10003), 48 | ('JPMorgan Chase Bank, National Association','156 Second Avenue','New York','New York','NY',10003), 49 | ('Capital One, N.A.','159 Second Avenue','New York','New York','NY',10003), 50 | ('Commerce Bank, N.A.','1st Avenue & 16th Street','New York','New York','NY',10003), 51 | ('Signature Bank','200 Park Avenue South','New York','New York','NY',10003), 52 | ('TD Bank N.A.','21 East First Street','New York','New York','NY',10003), 53 | ('Flushing Bank, FB','225 Park Avenue South','New York','New York','NY',10003), 54 | ('JPMorgan Chase Bank, National Association','230 Park Avenue South','New York','New York','NY',10003), 55 | ('JPMorgan Chase Bank, National Association','233 Third Avenue','New York','New York','NY',10003), 56 | ('Bank of America N.A. GA1-006-15-40','240 Park Avenue South','New York','New York','NY',10003), 57 | ('JPMorgan Chase Bank, National Association','255-57 First Avenue','New York','New York','NY',10003), 58 | ('JPMorgan Chase Bank, National Association','26 Astor Place','New York','New York','NY',10003), 59 | ('JPMorgan Chase Bank, National Association','305 Bowery','New York','New York','NY',10003), 60 | ('Ponce De Leon Federal Bank','319 1st Avenue','New York','New York','NY',10003), 61 | ('JPMorgan Chase Bank, National Association','32 University Place','New York','New York','NY',10003), 62 | ('TD Bank N.A.','329 First Avenue','New York','New York','NY',10003), 63 | ('Bank of America N.A. GA1-006-15-40','36 East 14th Street','New York','New York','NY',10003), 64 | ('Apple Bank For Savings','4 Irving Place','New York','New York','NY',10003), 65 | ('TD Bank N.A.','46 Third Avenue','New York','New York','NY',10003), 66 | ('Commerce Bank, N.A.','47 Third Avenue','New York','New York','NY',10003), 67 | ('Citibank N. A.','52 East 14th Street','New York','New York','NY',10003), 68 | ('JPMorgan Chase Bank, National Association','69 Fifth Avenue','New York','New York','NY',10003), 69 | ('Bank of America N.A. GA1-006-15-40','72 Second Avenue','New York','New York','NY',10003), 70 | ('Citibank N. A.','749 Broadway','New York','New York','NY',10003), 71 | ('HSBC Bank USA, National Association','769 Broadway','New York','New York','NY',10003), 72 | ('Bank of America N.A. GA1-006-15-40','770 Broadway','New York','New York','NY',10003), 73 | ('Wells Fargo ATM','781 Broadway','New York','New York','NY',10003), 74 | ('JPMorgan Chase Bank, National Association','785 Broadway','New York','New York','NY',10003), 75 | ('Citibank N. A.','79 Fifth Avenue','New York','New York','NY',10003), 76 | ('TD Bank N.A.','80 University Place','New York','New York','NY',10003), 77 | ('JPMorgan Chase Bank, National Association','835 Broadway','New York','New York','NY',10003), 78 | ('Santander Bank','841 Broadway','New York','New York','NY',10003), 79 | ('Citibank N. A.','1 Broadway','New York','New York','NY',10004), 80 | ('Commerce Bank, N.A.','201 Eleventh Avenue','New York','New York','NY',10004), 81 | ('HSBC Bank USA, National Association','26 Broadway','New York','New York','NY',10004), 82 | ('JPMorgan Chase Bank, National Association','42 Broadway','New York','New York','NY',10004), 83 | ('Berkshire Bank, The','5 Broadway','New York','New York','NY',10004), 84 | ('Amalgamated Bank','52 Broadway','New York','New York','NY',10004), 85 | ('Wells Fargo ATM','75 Broad Street','New York','New York','NY',10004), 86 | ('Citibank N. A.','80 Broad Street','New York','New York','NY',10004), 87 | ('JPMorgan Chase Bank, National Association','1 Chase Manhattan Plaza','New York','New York','NY',10005), 88 | ('Apple Bank For Savings','10 Hanover Square','New York','New York','NY',10005), 89 | ('Citibank N. A.','111 Wall Street','New York','New York','NY',10005), 90 | ('TD Bank N.A.','2 Wall Street','New York','New York','NY',10005), 91 | ('JPMorgan Chase Bank, National Association','45 Wall Street','New York','New York','NY',10005), 92 | ('Bank of America N.A. GA1-006-15-40','95 Wall Street','New York','New York','NY',10005), 93 | ('Bank of America N.A. GA1-006-15-40','29 Broadway','New York','New York','NY',10006), 94 | ('Signature Bank','71 Broadway','New York','New York','NY',10006), 95 | ('JPMorgan Chase Bank, National Association','101 Barclay Street','New York','New York','NY',10007), 96 | ('Apple Bank For Savings','110 Church Street','New York','New York','NY',10007), 97 | ('JPMorgan Chase Bank, National Association','158 Greenwich St','New York','New York','NY',10007), 98 | ('TD Bank N.A.','166 Chambers Street','New York','New York','NY',10007), 99 | ('Bank of America N.A. GA1-006-15-40','168 Church Street','New York','New York','NY',10007), 100 | ('JPMorgan Chase Bank, National Association','185 Greenwich Street','New York','New York','NY',10007), 101 | ('Municipal Credit Union','2 Lafayette Street','New York','New York','NY',10007), 102 | ('First Republic Bank','225 Broadway','New York','New York','NY',10007), 103 | ('Citibank N. A.','250 Broadway','New York','New York','NY',10007), 104 | ('JPMorgan Chase Bank, National Association','253 Broadway','New York','New York','NY',10007), 105 | ('TD Bank N.A.','258 Broadway','New York','New York','NY',10007), 106 | ('Bank of America N.A. GA1-006-15-40','260 Greenwich Street','New York','New York','NY',10007), 107 | ('Bank of America N.A. GA1-006-15-40','261 Broadway','New York','New York','NY',10007), 108 | ('JPMorgan Chase Bank, National Association','270 Broadway','New York','New York','NY',10007), 109 | ('Capital One, N.A.','277 Broadway','New York','New York','NY',10007), 110 | ('Capital One, N.A.','90 West Broadway','New York','New York','NY',10007), 111 | ('Citibank N. A.','262 First Avenue','New York','New York','NY',10009), 112 | ('Capital One, N.A.','273 East 3rd Street','New York','New York','NY',10009), 113 | ('Citibank N. A.','36 Avenue C','New York','New York','NY',10009), 114 | ('Citibank N. A.','50 Avenue A','New York','New York','NY',10009), 115 | ('Santander Bank','57 East Avenue A','New York','New York','NY',10009), 116 | ('Key Bank, National Association','11 East 22nd Street','New York','New York','NY',10010), 117 | ('Citibank N. A.','1107 Broadway','New York','New York','NY',10010), 118 | ('Citibank N. A.','115 East 23rd Street','New York','New York','NY',10010), 119 | ('TD Bank N.A.','131 East 23rd Street','New York','New York','NY',10010), 120 | ('HSBC Bank USA, National Association','145 Fifth Avenue','New York','New York','NY',10010), 121 | ('JPMorgan Chase Bank, National Association','162 Fifth Avenue','New York','New York','NY',10010), 122 | ('JPMorgan Chase Bank, National Association','225 Fifth Avenue','New York','New York','NY',10010), 123 | ('Citibank N. A.','25 Waterside Plaza','New York','New York','NY',10010), 124 | ('TD Bank N.A.','260 Park Avenue South','New York','New York','NY',10010), 125 | ('JPMorgan Chase Bank, National Association','277 Park Avenue South','New York','New York','NY',10010), 126 | ('Amalgamated Bank','301 Third Avenue','New York','New York','NY',10010), 127 | ('HSBC Bank USA, National Association','302 Third Avenue','New York','New York','NY',10010), 128 | ('JPMorgan Chase Bank, National Association','333 East 23rd Street','New York','New York','NY',10010), 129 | ('Bank of America N.A. GA1-006-15-40','345 Park Avenue South','New York','New York','NY',10010), 130 | ('Banco Popular North America','375 Park Avenue South','New York','New York','NY',10010), 131 | ('Manufacturers and Traders Trust Company','397 First Avenue','New York','New York','NY',10010), 132 | ('Banco Popular North America','441 Second Avenue','New York','New York','NY',10010), 133 | ('TD Bank N.A.','655 Avenue of the Americas','New York','New York','NY',10010), 134 | ('Bank of America N.A. GA1-006-15-40','670 Avenue of the Americas','New York','New York','NY',10010), 135 | ('JPMorgan Chase Bank, National Association','71 West 23rd Street','New York','New York','NY',10010), 136 | ('Citibank N. A.','717 Avenue of Americas','New York','New York','NY',10010), 137 | ('Wells Fargo ATM','777 Avenue of the Americas','New York','New York','NY',10010), 138 | ('Valley National Bank','924 Broadway','New York','New York','NY',10010), 139 | ('TD Bank N.A.','950 Broadway','New York','New York','NY',10010), 140 | ('Citibank N. A.','111 Eighth Avenue','New York','New York','NY',10011), 141 | ('JPMorgan Chase Bank, National Association','111 Eighth Avenue','New York','New York','NY',10011), 142 | ('Wells Fargo ATM','112 Ninth Avenue','New York','New York','NY',10011), 143 | ('Bank of America N.A. GA1-006-15-40','116 Fifth Avenue','New York','New York','NY',10011), 144 | ('Wells Fargo ATM','120 Seventh Avenue','New York','New York','NY',10011), 145 | ('Capital One, N.A.','120 West 23rd Street','New York','New York','NY',10011), 146 | ('TD Bank N.A.','122 Greenwich Avenue ','New York','New York','NY',10011), 147 | ('Bank of America N.A. GA1-006-15-40','127 Eighth Avenue','New York','New York','NY',10011), 148 | ('People''s United Bank','127 Seventh Avenue','New York','New York','NY',10011), 149 | ('Capital One, N.A.','144 Eighth Avenue','New York','New York','NY',10011), 150 | ('JPMorgan Chase Bank, National Association','158 West 14th Street','New York','New York','NY',10011), 151 | ('Valley National Bank','159 Eighth Avenue','New York','New York','NY',10011), 152 | ('Santander Bank','169 Seventh Avenue','New York','New York','NY',10011), 153 | ('TD Bank N.A.','202 West 23rd Street','New York','New York','NY',10011), 154 | ('North East Community Bank','242 West 23rd Street','New York','New York','NY',10011), 155 | ('Bank of America N.A. GA1-006-15-40','244 Eighth Avenue','New York','New York','NY',10011), 156 | ('Apple Bank For Savings','250 West 23rd Street','New York','New York','NY',10011), 157 | ('Citibank N. A.','322 West 23rd Street','New York','New York','NY',10011), 158 | ('JPMorgan Chase Bank, National Association','340 Avenue of the Americas','New York','New York','NY',10011), 159 | ('HSBC Bank USA, National Association','354 Avenue of the Americas','New York','New York','NY',10011), 160 | ('Bank of America N.A. GA1-006-15-40','390 Sixth Avenue','New York','New York','NY',10011), 161 | ('Capital One, N.A.','401 West 23rd Street','New York','New York','NY',10011), 162 | ('First Republic Bank','442 Avenue of the Americas','New York','New York','NY',10011), 163 | ('Wells Fargo ATM','475 Sixth Avenue','New York','New York','NY',10011), 164 | ('JPMorgan Chase Bank, National Association','475 West 23rd Street','New York','New York','NY',10011), 165 | ('Capital One, N.A.','Chelsea Pier #59','New York','New York','NY',10011), 166 | ('Capital One, N.A.','Chelsea Pier #60','New York','New York','NY',10011), 167 | ('Capital One, N.A.','Chelsea Pier #61','New York','New York','NY',10011), 168 | ('JPMorgan Chase Bank, National Association','611 Avenue of the Americas','New York','New York','NY',10011), 169 | ('Capital One, N.A.','Chelsea Piers #62','New York','New York','NY',10011), 170 | ('HSBC Bank USA, National Association','80 Eighth Avenue','New York','New York','NY',10011), 171 | ('Capital One, N.A.','Chelsea Piers','New York','New York','NY',10011), 172 | ('Wells Fargo ATM','374 6th Avenue','New York','New York','NY',10011), 173 | ('Capital One, N.A.','154 Bleecker Street','New York','New York','NY',10012), 174 | ('Bank of America N.A. GA1-006-15-40','315 Lafayette Street','New York','New York','NY',10012), 175 | ('Apple Bank For Savings','371 Seventh Avenue','New York','New York','NY',10012), 176 | ('Capital One, N.A.','501 Broadway','New York','New York','NY',10012), 177 | ('JPMorgan Chase Bank, National Association','525 Broadway','New York','New York','NY',10012), 178 | ('HSBC Bank USA, National Association','550 BROADWAY','New York','New York','NY',10012), 179 | ('Citibank N. A.','555 LaGuardia Place','New York','New York','NY',10012), 180 | ('Bank of America N.A. GA1-006-15-40','589 Broadway','New York','New York','NY',10012), 181 | ('JPMorgan Chase Bank, National Association','623 Broadway','New York','New York','NY',10012), 182 | ('TD Bank N.A.','666 Broadway','New York','New York','NY',10012), 183 | ('HSBC Bank USA, National Association','110 West Broadway','New York','New York','NY',10013), 184 | ('Capital One, N.A.','116 Bowery','New York','New York','NY',10013), 185 | ('Citibank N. A.','120 West Broadway','New York','New York','NY',10013), 186 | ('Citibank N. A.','127 Hudson Street','New York','New York','NY',10013), 187 | ('Cathay Bank','129 Lafayette Street','New York','New York','NY',10013), 188 | ('TD Bank N.A.','155 Canal Street','New York','New York','NY',10013), 189 | ('Citibank N. A.','164 Canal Street','New York','New York','NY',10013), 190 | ('JPMorgan Chase Bank, National Association','180 Canal Street','New York','New York','NY',10013), 191 | ('Eastbank, NA','183 Centre Street','New York','New York','NY',10013), 192 | ('United Orient Bank','185 Canal Street','New York','New York','NY',10013), 193 | ('Citibank N. A.','2 Mott Street','New York','New York','NY',10013), 194 | ('Industrial and Commercial Bank of China (USA) NA','202 Canal Street','New York','New York','NY',10013), 195 | ('East West Bank','208 Canal Street','New York','New York','NY',10013), 196 | ('JPMorgan Chase Bank, National Association','221 Canal Street','New York','New York','NY',10013), 197 | ('JPMorgan Chase Bank, National Association','231 Grand Street','New York','New York','NY',10013), 198 | ('HSBC Bank USA, National Association','235 Canal Street','New York','New York','NY',10013), 199 | ('TD Bank N.A.','254 Canal Street','New York','New York','NY',10013), 200 | ('Bank of America N.A. GA1-006-15-40','277 Canal Street','New York','New York','NY',10013), 201 | ('Skyline Federal Credit Union','32 Avenue of the Americas','New York','New York','NY',10013), 202 | ('HSBC Bank USA, National Association','335 Broadway','New York','New York','NY',10013), 203 | ('Santander Bank','336 Broadway','New York','New York','NY',10013), 204 | ('Citibank N. A.','388 Greenwich Street','New York','New York','NY',10013), 205 | ('JPMorgan Chase Bank, National Association','407 Broadway','New York','New York','NY',10013), 206 | ('Valley National Bank','450 Broadway','New York','New York','NY',10013), 207 | ('Wells Fargo ATM','463 Broadway','New York','New York','NY',10013), 208 | ('Citibank N. A.','476 Broadway','New York','New York','NY',10013), 209 | ('Bank of America N.A. GA1-006-15-40','50 Bayard Street','New York','New York','NY',10013), 210 | ('HSBC Bank USA, National Association','58 Bowery','New York','New York','NY',10013), 211 | ('Abacus Federal Savings Bank','6-8 Bowery','New York','New York','NY',10013), 212 | ('JPMorgan Chase Bank, National Association','65 Worth Street','New York','New York','NY',10013), 213 | ('Bank of America N.A. GA1-006-15-40','88 Bowery Street','New York','New York','NY',10013), 214 | ('Apple Bank For Savings','10 Downing Street','New York','New York','NY',10014), 215 | ('TD Bank N.A.','175 Varick Street','New York','New York','NY',10014), 216 | ('Citibank N. A.','200 Varick Street','New York','New York','NY',10014), 217 | ('JPMorgan Chase Bank, National Association','204 West 4th Street','New York','New York','NY',10014), 218 | ('HSBC Bank USA, National Association','207 Varick Street','New York','New York','NY',10014), 219 | ('Bank of America N.A. GA1-006-15-40','224 West 4th Street','New York','New York','NY',10014), 220 | ('Banco Popular North America','285 Madison Avenue','New York','New York','NY',10014), 221 | ('JPMorgan Chase Bank, National Association','302 West 12th Street','New York','New York','NY',10014), 222 | ('JPMorgan Chase Bank, National Association','345 Hudson Street','New York','New York','NY',10014), 223 | ('Capital One, N.A.','347 Sixth Avenue','New York','New York','NY',10014), 224 | ('Capital One, N.A.','Pier 40 West Street','New York','New York','NY',10014), 225 | ('HSBC Bank USA, National Association','576 Hudson Street','New York','New York','NY',10014), 226 | ('Citibank N. A.','75 Christopher Street','New York','New York','NY',10014), 227 | ('Citibank N. A.','1 Park Avenue','New York','New York','NY',10016), 228 | ('Wells Fargo ATM','180 Madison Avenue','New York','New York','NY',10016), 229 | ('HSBC Bank USA, National Association','2 Park Avenue','New York','New York','NY',10016), 230 | ('JPMorgan Chase Bank, National Association','2 Park Avenue','New York','New York','NY',10016), 231 | ('First National Bank of Long Island','232 Madison Avenue','New York','New York','NY',10016), 232 | ('Santander Bank','250 Lexington Avenue','New York','New York','NY',10016), 233 | ('JPMorgan Chase Bank, National Association','260 Madison Avenue','New York','New York','NY',10016), 234 | ('Signature Bank','261 Madison Avenue','New York','New York','NY',10016), 235 | ('Investors Bank','267 Fifth Avenue','New York','New York','NY',10016), 236 | ('Valley National Bank','295 Fifth Avenue','New York','New York','NY',10016), 237 | ('KEB Hana Bank USA, NA','309 5TH AVENUE','New York','New York','NY',10016), 238 | ('Shinhan Bank America','313 Fifth Avenue','New York','New York','NY',10016), 239 | ('JPMorgan Chase Bank, National Association','349 Fifth Avenue','New York','New York','NY',10016), 240 | ('Bank of America N.A. GA1-006-15-40','353 Lexington Avenue','New York','New York','NY',10016), 241 | ('JPMorgan Chase Bank, National Association','386 Park Avenue South','New York','New York','NY',10016), 242 | ('Bank of America N.A. GA1-006-15-40','399 Third Avenue','New York','New York','NY',10016), 243 | ('Berkshire Bank, The','4 East 39th Street','New York','New York','NY',10016), 244 | ('TD Bank N.A.','401 Fifth Avenue','New York','New York','NY',10016), 245 | ('New York Community Bank','404 PARK AVENUE SOUTH','New York','New York','NY',10016), 246 | ('Citibank N. A.','411 Fifth Avenue','New York','New York','NY',10016), 247 | ('First Republic Bank','443 Park Avenue South','New York','New York','NY',10016), 248 | ('JPMorgan Chase Bank, National Association','450 Third Avenue','New York','New York','NY',10016), 249 | ('Capital One, N.A.','470 Park Avenue','New York','New York','NY',10016), 250 | ('Citibank N. A.','481 First Avenue','New York','New York','NY',10016), 251 | ('JPMorgan Chase Bank, National Association','501 Second Avenue','New York','New York','NY',10016), 252 | ('Bank of America N.A. GA1-006-15-40','560 Second Avenue','New York','New York','NY',10016), 253 | ('TD Bank N.A.','593 Third Avenue','New York','New York','NY',10016), 254 | ('Citibank N. A.','90 Park Avenue','New York','New York','NY',10016), 255 | ('Manufacturers and Traders Trust Company','95 Madison Avenue','New York','New York','NY',10016), 256 | ('Habib American Bank','99 Madison Avenue','New York','New York','NY',10016), 257 | ('Metropolitan National Bank','99 Park Avenue','New York','New York','NY',10016), 258 | ('JPMorgan Chase Bank, National Association','1 UN Plaza','New York','New York','NY',10017), 259 | ('Valley National Bank','100 Park Avenue','New York','New York','NY',10017), 260 | ('HSBC Bank USA, National Association','1002 Madison Avenue','New York','New York','NY',10017), 261 | ('Capital One, N.A.','109 East 42nd Street','New York','New York','NY',10017), 262 | ('Citibank N. A.','120 Park Avenue','New York','New York','NY',10017), 263 | ('TD Bank N.A.','125 Park Avenue','New York','New York','NY',10017), 264 | ('Citibank N. A.','145 East 42nd Street','New York','New York','NY',10017), 265 | ('JPMorgan Chase Bank, National Association','219 East 42nd Street','New York','New York','NY',10017), 266 | ('HSBC Bank USA, National Association','250 Park Avenue','New York','New York','NY',10017), 267 | ('Capital One, N.A.','300 Madison Avenue','New York','New York','NY',10017), 268 | ('Santander Bank','330 Madison Avenue','New York','New York','NY',10017), 269 | ('Citibank N. A.','330 Madison Avenue','New York','New York','NY',10017), 270 | ('Bank of America N.A. GA1-006-15-40','335 Madison Avenue','New York','New York','NY',10017), 271 | ('Emigrant Savings Bank - Manhattan','335 MADISON AVENUE','New York','New York','NY',10017), 272 | ('JPMorgan Chase Bank, National Association','355 Lexington Avenue','New York','New York','NY',10017), 273 | ('Citibank N. A.','400 Madison Avenue','New York','New York','NY',10017), 274 | ('JPMorgan Chase Bank, National Association','401 Madison Avenue','New York','New York','NY',10017), 275 | ('Capital One, N.A.','424 Madison Avenue','New York','New York','NY',10017), 276 | ('TD Bank N.A.','451 Lexington Avenue','New York','New York','NY',10017), 277 | ('Emigrant Savings Bank - Manhattan','5 EAST 42ND STREET','New York','New York','NY',10017), 278 | ('Bank of America N.A. GA1-006-15-40','501 Fifth Avenue','New York','New York','NY',10017), 279 | ('Bank of America N.A. GA1-006-15-40','56 East 42nd Street','New York','New York','NY',10017), 280 | ('JPMorgan Chase Bank, National Association','60 East 42nd Street','New York','New York','NY',10017), 281 | ('Sterling National Bank of New York','622 Third Avenue','New York','New York','NY',10017), 282 | ('JPMorgan Chase Bank, National Association','633 Third Avenue','New York','New York','NY',10017), 283 | ('Country Bank','655 Third Avenue','New York','New York','NY',10017), 284 | ('Wells Fargo ATM','666 Third Avenue','New York','New York','NY',10017), 285 | ('Bank of America N.A. GA1-006-15-40','675 Third Avenue','New York','New York','NY',10017), 286 | ('TD Bank N.A.','685 Third Avenue','New York','New York','NY',10017), 287 | ('Santander Bank','711 Third Avenue','New York','New York','NY',10017), 288 | ('Citibank N. A.','734 Third Avenue','New York','New York','NY',10017), 289 | ('Bank of America N.A. GA1-006-15-40','750 Third Avenue','New York','New York','NY',10017), 290 | ('HSBC Bank USA, National Association','777 Third Avenue','New York','New York','NY',10017), 291 | ('JPMorgan Chase Bank, National Association','801 Second Avenue','New York','New York','NY',10017), 292 | ('Citibank N. A.','866 United Nations Plaza','New York','New York','NY',10017), 293 | ('Country Bank','902 Second Avenue','New York','New York','NY',10017), 294 | ('TD Bank N.A.','919 Second Avenue','New York','New York','NY',10017), 295 | ('Capital One, N.A.','1001 Avenue of The Americas','New York','New York','NY',10018), 296 | ('Alma Bank','1023 Avenue of the Americas','New York','New York','NY',10018), 297 | ('Valley National Bank','1040 Sixth Avenue','New York','New York','NY',10018), 298 | ('Citibank N. A.','1065 Avenue of the Americas','New York','New York','NY',10018), 299 | ('HSBC Bank USA, National Association','1350 Broadway','New York','New York','NY',10018), 300 | ('Santander Bank','1350 Broadway','New York','New York','NY',10018), 301 | ('Metropolitan National Bank','1359 Broadway','New York','New York','NY',10018), 302 | ('Citibank N. A.','1384 Broadway','New York','New York','NY',10018), 303 | ('Capital One, N.A.','1407 Broadway','New York','New York','NY',10018), 304 | ('JPMorgan Chase Bank, National Association','1411 Broadway','New York','New York','NY',10018), 305 | ('HSBC Bank USA, National Association','452 Fifth Avenue','New York','New York','NY',10018), 306 | ('TD Bank N.A.','469 Seventh Avenue','New York','New York','NY',10018), 307 | ('JPMorgan Chase Bank, National Association','498 Fashion Avenue','New York','New York','NY',10018), 308 | ('Bank of America N.A. GA1-006-15-40','515 Seventh Avenue','New York','New York','NY',10018), 309 | ('HSBC Bank USA, National Association','518 Fashion Avenue','New York','New York','NY',10018), 310 | ('Wells Fargo ATM','535 Seventh Avenue','New York','New York','NY',10018), 311 | ('JPMorgan Chase Bank, National Association','615 Eighth Avenue','New York','New York','NY',10018), 312 | ('Bank of America N.A. GA1-006-15-40','625 8th Avenue','New York','New York','NY',10018), 313 | ('Capital One, N.A.','845 Third Avenue','New York','New York','NY',10018), 314 | ('First Republic Bank','10 Columbus Circle','New York','New York','NY',10019), 315 | ('Banco Popular North America','11 West 51st Street','New York','New York','NY',10019), 316 | ('Santander Bank','1290 Avenue of the Americas','New York','New York','NY',10019), 317 | ('Apple Bank For Savings','1320 Avenue of the Americas','New York','New York','NY',10019), 318 | ('JPMorgan Chase Bank, National Association','1370 Avenue of the Americas','New York','New York','NY',10019), 319 | ('TD Bank N.A.','1633 Broadway','New York','New York','NY',10019), 320 | ('TD Bank N.A.','1633 Broadway','New York','New York','NY',10019), 321 | ('Bank of America N.A. GA1-006-15-40','1680 Broadway','New York','New York','NY',10019), 322 | ('JPMorgan Chase Bank, National Association','171 West 57th Street','New York','New York','NY',10019), 323 | ('Capital One, N.A.','1745 Broadway','New York','New York','NY',10019), 324 | ('Citibank N. A.','1748 Broadway','New York','New York','NY',10019), 325 | ('Wells Fargo ATM','1755 Broadway','New York','New York','NY',10019), 326 | ('JPMorgan Chase Bank, National Association','1775 Broadway','New York','New York','NY',10019), 327 | ('Bank of America N.A. GA1-006-15-40','1775 Broadway','New York','New York','NY',10019), 328 | ('TD Bank N.A.','224 West 57th Street','New York','New York','NY',10019), 329 | ('Bank of America N.A. GA1-006-15-40','25 West 51st Street','New York','New York','NY',10019), 330 | ('Santander Bank','260 West 52nd Street/864 Eighth Avenue','New York','New York','NY',10019), 331 | ('Citibank N. A.','4 Columbus Circle','New York','New York','NY',10019), 332 | ('Commerce Bank, N.A.','428 West 59th Street','New York','New York','NY',10019), 333 | ('JPMorgan Chase Bank, National Association','51 West 51st Street','New York','New York','NY',10019), 334 | ('TD Bank N.A.','51 West 52nd Street','New York','New York','NY',10019), 335 | ('TD Bank N.A.','524 West 57th Street','New York','New York','NY',10019), 336 | ('Capital One, N.A.','57 West 57th Street','New York','New York','NY',10019), 337 | ('Citibank N. A.','640 Fifth Avenue','New York','New York','NY',10019), 338 | ('Citibank N. A.','787 Seventh Avenue','New York','New York','NY',10019), 339 | ('JPMorgan Chase Bank, National Association','810 Seventh Avenue','New York','New York','NY',10019), 340 | ('Manufacturers and Traders Trust Company','830 Eighth Avenue','New York','New York','NY',10019), 341 | ('Bank of America N.A. GA1-006-15-40','835 Eighth Avenue','New York','New York','NY',10019), 342 | ('JPMorgan Chase Bank, National Association','839 Ninth Avenue','New York','New York','NY',10019), 343 | ('Capital One, N.A.','840 Ninth Avenue','New York','New York','NY',10019), 344 | ('Citibank N. A.','842 Ninth Avenue','New York','New York','NY',10019), 345 | ('TD Bank N.A.','910 Eighth Avenue','New York','New York','NY',10019), 346 | ('Citibank N. A.','1 Rockefeller Plaza','New York','New York','NY',10020), 347 | ('First Republic Bank','1230 Avenue of the Americas','New York','New York','NY',10020), 348 | ('JPMorgan Chase Bank, National Association','1251 Avenue of the Americas','New York','New York','NY',10020), 349 | ('JPMorgan Chase Bank, National Association','1003 Lexington Avenue','New York','New York','NY',10021), 350 | ('Santander Bank','1062 3rd Avenue','New York','New York','NY',10021), 351 | ('Bank of America N.A. GA1-006-15-40','1066 Lexington Avenue','New York','New York','NY',10021), 352 | ('Citibank N. A.','1078 Third Avenue','New York','New York','NY',10021), 353 | ('TD Bank N.A.','1091 Third Avenue','New York','New York','NY',10021), 354 | ('Bank of America N.A. GA1-006-15-40','1143 Lexington Avenue','New York','New York','NY',10021), 355 | ('HSBC Bank USA, National Association','1165 Third Avenue','New York','New York','NY',10021), 356 | ('Apple Bank For Savings','1168 First Avenue','New York','New York','NY',10021), 357 | ('Capital One, N.A.','1180 Third Avenue','New York','New York','NY',10021), 358 | ('TD Bank N.A.','1230 Third Avenue','New York','New York','NY',10021), 359 | ('Citibank N. A.','1266 First Avenue','New York','New York','NY',10021), 360 | ('Citibank N. A.','1285 First Avenue','New York','New York','NY',10021), 361 | ('JPMorgan Chase Bank, National Association','1324 York Avenue','New York','New York','NY',10021), 362 | ('Valley National Bank','1328 Second Avenue','New York','New York','NY',10021), 363 | ('Citibank N. A.','1330 First Avenue','New York','New York','NY',10021), 364 | ('Bank of America N.A. GA1-006-15-40','1330 First Avenue','New York','New York','NY',10021), 365 | ('HSBC Bank USA, National Association','1340 Third Avenue','New York','New York','NY',10021), 366 | ('North East Community Bank','1355 1ST AVE','New York','New York','NY',10021), 367 | ('Wells Fargo ATM','1370 Third Avenue','New York','New York','NY',10021), 368 | ('Ridgewood Savings Bank','1404 Second Avenue','New York','New York','NY',10021), 369 | ('TD Bank N.A.','1470 Second Avenue','New York','New York','NY',10021), 370 | ('Citibank N. A.','1510-12 First Avenue','New York','New York','NY',10021), 371 | ('Citibank N. A.','171 East 72nd Street','New York','New York','NY',10021), 372 | ('JPMorgan Chase Bank, National Association','35 East 72nd Street','New York','New York','NY',10021), 373 | ('JPMorgan Chase Bank, National Association','360 East 72nd Street','New York','New York','NY',10021), 374 | ('Citibank N. A.','757 Madison Avenue','New York','New York','NY',10021), 375 | ('Commerce Bank, N.A.','830 Fifth Avenue','New York','New York','NY',10021), 376 | ('TD Bank N.A.','1031 First Avenue','New York','New York','NY',10022), 377 | ('Manufacturers and Traders Trust Company','1034 Second Avenue','New York','New York','NY',10022), 378 | ('Citibank N. A.','1044 First Avenue','New York','New York','NY',10022), 379 | ('HSBC Bank USA, National Association','131 East 57th Street','New York','New York','NY',10022), 380 | ('BankUnited, NA','136 East 57th Street','New York','New York','NY',10022), 381 | ('Capital One, N.A.','300 East 55th Street','New York','New York','NY',10022), 382 | ('Capital One, N.A.','320 Park Avenue','New York','New York','NY',10022), 383 | ('First Republic Bank','320 Park Avenue','New York','New York','NY',10022), 384 | ('Citibank N. A.','333 Park Avenue South','New York','New York','NY',10022), 385 | ('Valley National Bank','350 Park Avenue','New York','New York','NY',10022), 386 | ('JPMorgan Chase Bank, National Association','360 East 57th Street','New York','New York','NY',10022), 387 | ('JPMorgan Chase Bank, National Association','360 Park Avenue','New York','New York','NY',10022), 388 | ('Citibank N. A.','399 Park Avenue','New York','New York','NY',10022), 389 | ('City National Bank','400 PARK AVENUE','New York','New York','NY',10022), 390 | ('Capital One, N.A.','404 Fifth Avenue','New York','New York','NY',10022), 391 | ('New York Community Bank','405 PARK AVENUE','New York','New York','NY',10022), 392 | ('JPMorgan Chase Bank, National Association','410 Park Avenue','New York','New York','NY',10022), 393 | ('Wells Fargo ATM','437 Madison Avenue','New York','New York','NY',10022), 394 | ('TD Bank N.A.','444 Madison Avenue','New York','New York','NY',10022), 395 | ('Santander Bank','45 East 53rd Street','New York','New York','NY',10022), 396 | ('Citibank N. A.','460 Park Avenue','New York','New York','NY',10022), 397 | ('TD Bank N.A.','475 Park Avenue South','New York','New York','NY',10022), 398 | ('M.Y. Safra Bank, FSB','499 Park Avenue','New York','New York','NY',10022), 399 | ('TD Bank N.A.','500 Park Ave','New York','New York','NY',10022), 400 | ('Capital One, N.A.','502 Park Avenue','New York','New York','NY',10022), 401 | ('JPMorgan Chase Bank, National Association','510 Park Avenue','New York','New York','NY',10022), 402 | ('East West Bank','535 Madison Avenue','New York','New York','NY',10022), 403 | ('Wells Fargo ATM','540 Madison Avenue','New York','New York','NY',10022), 404 | ('Entertainment Industries Federal Credit Union','550 Madison Avenue','New York','New York','NY',10022), 405 | ('TD Bank N.A.','555 Madison Avenue','New York','New York','NY',10022), 406 | ('First Republic Bank','575 Madison Avenue','New York','New York','NY',10022), 407 | ('JPMorgan Chase Bank, National Association','610 Madison Avenue','New York','New York','NY',10022), 408 | ('Capital One, N.A.','643 Lexington Avenue','New York','New York','NY',10022), 409 | ('Wells Fargo ATM','731 Lexington Avenue','New York','New York','NY',10022), 410 | ('Citibank N. A.','785 Fifth Avenue','New York','New York','NY',10022), 411 | ('Citibank N. A.','800 Third Avenue','New York','New York','NY',10022), 412 | ('Apple Bank For Savings','812-814 Lexington Avenue','New York','New York','NY',10022), 413 | ('JPMorgan Chase Bank, National Association','850 Third Avenue','New York','New York','NY',10022), 414 | ('Wells Fargo ATM','866 Third Avenue','New York','New York','NY',10022), 415 | ('Banco Popular North America','875 Third Avenue','New York','New York','NY',10022), 416 | ('TD Bank N.A.','880 Third Avenue','New York','New York','NY',10022), 417 | ('Bank of America N.A. GA1-006-15-40','882 First Avenue','New York','New York','NY',10022), 418 | ('JPMorgan Chase Bank, National Association','900 First Avenue','New York','New York','NY',10022), 419 | ('Bank of America N.A. GA1-006-15-40','900 Third Avenue','New York','New York','NY',10022), 420 | ('Commerce Bank, N.A.','909 Third Avenue','New York','New York','NY',10022), 421 | ('JPMorgan Chase Bank, National Association','919 Third Avenue','New York','New York','NY',10022), 422 | ('New York Community Bank','936 THIRD AVENUE','New York','New York','NY',10022), 423 | ('TD Bank N.A.','953 Third Avenue','New York','New York','NY',10022), 424 | ('Citibank N. A.','974 Third Avenue','New York','New York','NY',10022), 425 | ('Bank of America N.A. GA1-006-15-40','988 Third Avenue','New York','New York','NY',10022), 426 | ('Capital One, N.A.','991 Third Avenue','New York','New York','NY',10022), 427 | ('JPMorgan Chase Bank, National Association','993 Second Avenue','New York','New York','NY',10022), 428 | ('JPMorgan Chase Bank, National Association','994 First Avenue','New York','New York','NY',10022), 429 | ('Commerce Bank, N.A.','113 West 60th Street','New York','New York','NY',10023), 430 | ('Capital One, N.A.','1295 Second Avenue','New York','New York','NY',10023), 431 | ('JPMorgan Chase Bank, National Association','160 Columbus Avenue','New York','New York','NY',10023), 432 | ('Citibank N. A.','162 Amsterdam Avenue','New York','New York','NY',10023), 433 | ('Citibank N. A.','170 West 72nd Street','New York','New York','NY',10023), 434 | ('Capital One, N.A.','175 West 72nd Street','New York','New York','NY',10023), 435 | ('JPMorgan Chase Bank, National Association','1860 Broadway','New York','New York','NY',10023), 436 | ('TD Bank N.A.','1873 Broadway','New York','New York','NY',10023), 437 | ('Bank of America N.A. GA1-006-15-40','1886 Broadway','New York','New York','NY',10023), 438 | ('Citibank N. A.','1900 Broadway','New York','New York','NY',10023), 439 | ('Bank of America N.A. GA1-006-15-40','192 Columbus Avenue','New York','New York','NY',10023), 440 | ('TD Bank N.A.','1995 Broadway','New York','New York','NY',10023), 441 | ('Capital One, N.A.','2025 Broadway','New York','New York','NY',10023), 442 | ('HSBC Bank USA, National Association','2025 Broadway','New York','New York','NY',10023), 443 | ('JPMorgan Chase Bank, National Association','2030 Broadway','New York','New York','NY',10023), 444 | ('Bank of America N.A. GA1-006-15-40','2077 Broadway','New York','New York','NY',10023), 445 | ('JPMorgan Chase Bank, National Association','2099 Broadway','New York','New York','NY',10023), 446 | ('Apple Bank For Savings','2100 Broadway','New York','New York','NY',10023), 447 | ('TD Bank N.A.','2109 Broadway','New York','New York','NY',10023), 448 | ('JPMorgan Chase Bank, National Association','260 Columbus Avenue','New York','New York','NY',10023), 449 | ('American Broadcast Employees Federal Credit Union','30 West 66th Street','New York','New York','NY',10023), 450 | ('HSBC Bank USA, National Association','301 Columbus Avenue','New York','New York','NY',10023), 451 | ('Bank of America N.A. GA1-006-15-40','334 Columbus Avenue','New York','New York','NY',10023), 452 | ('JPMorgan Chase Bank, National Association','335 Columbus Avenue','New York','New York','NY',10023), 453 | ('American Broadcast Employees Federal Credit Union','77 West 66th Street','New York','New York','NY',10023), 454 | ('Wells Fargo ATM','2039 BROADWAY','New York','New York','NY',10024), 455 | ('First Republic Bank','2160 Broadway','New York','New York','NY',10024), 456 | ('JPMorgan Chase Bank, National Association','2219 Broadway','New York','New York','NY',10024), 457 | ('Bank of America N.A. GA1-006-15-40','2260 Broadway','New York','New York','NY',10024), 458 | ('Santander Bank','2275 Broadway','New York','New York','NY',10024), 459 | ('Citibank N. A.','2350 Broadway','New York','New York','NY',10024), 460 | ('Capital One, N.A.','2379 Broadway','New York','New York','NY',10024), 461 | ('Bank of America N.A. GA1-006-15-40','2380 Broadway','New York','New York','NY',10024), 462 | ('TD Bank N.A.','2400 Broadway','New York','New York','NY',10024), 463 | ('HSBC Bank USA, National Association','2411 Broadway','New York','New York','NY',10024), 464 | ('Wells Fargo ATM','2415 BROADWAY','New York','New York','NY',10024), 465 | ('JPMorgan Chase Bank, National Association','2438 Broadway','New York','New York','NY',10024), 466 | ('Citibank N. A.','441 Columbus Avenue','New York','New York','NY',10024), 467 | ('TD Bank N.A.','535 Columbus Avenue','New York','New York','NY',10024), 468 | ('JPMorgan Chase Bank, National Association','59 West 86th Street','New York','New York','NY',10024), 469 | ('Commerce Bank, N.A.','1111 Amsterdam Avenue','New York','New York','NY',10025), 470 | ('Capital One, N.A.','2519 Broadway','New York','New York','NY',10025), 471 | ('TD Bank N.A.','2521 Broadway','New York','New York','NY',10025), 472 | ('JPMorgan Chase Bank, National Association','2540 BROADWAY','New York','New York','NY',10025), 473 | ('JPMorgan Chase Bank, National Association','2540 Broadway','New York','New York','NY',10025), 474 | ('Citibank N. A.','2560 Broadway','New York','New York','NY',10025), 475 | ('Bank of America N.A. GA1-006-15-40','2574 Broadway','New York','New York','NY',10025), 476 | ('Bank of America N.A. GA1-006-15-40','2770 Broadway','New York','New York','NY',10025), 477 | ('Banco Popular North America','2812 Broadway','New York','New York','NY',10025), 478 | ('Santander Bank','2814 Broadway','New York','New York','NY',10025), 479 | ('JPMorgan Chase Bank, National Association','2824 Broadway','New York','New York','NY',10025), 480 | ('TD Bank N.A.','2831 Broadway','New York','New York','NY',10025), 481 | ('Citibank N. A.','2872 Broadway','New York','New York','NY',10025), 482 | ('JPMorgan Chase Bank, National Association','2898 Broadway','New York','New York','NY',10025), 483 | ('HSBC Bank USA, National Association','721 Amsterdam Avenue','New York','New York','NY',10025), 484 | ('Capital One, N.A.','750 Columbus Avenue','New York','New York','NY',10025), 485 | ('JPMorgan Chase Bank, National Association','775 Columbus Avenue','New York','New York','NY',10025), 486 | ('Bank of America N.A. GA1-006-15-40','808 Columbus Avenue','New York','New York','NY',10025), 487 | ('Banco Popular North America','90 West 96th Street','New York','New York','NY',10025), 488 | ('Bank of America N.A. GA1-006-15-40','106 West 117th Street','New York','New York','NY',10026), 489 | ('Carver Federal Savings Bank','142 Malcolm X Boulevard','New York','New York','NY',10026), 490 | ('Wells Fargo ATM','143 Lenox Avenue','New York','New York','NY',10026), 491 | ('Spring Bank','2049 Frederick Douglass Boulevard','New York','New York','NY',10026), 492 | ('HSBC Bank USA, National Association','2063 Fredrick Douglas Boulevard','New York','New York','NY',10026), 493 | ('JPMorgan Chase Bank, National Association','2195 Frederick Douglas Boulevard','New York','New York','NY',10026), 494 | ('JPMorgan Chase Bank, National Association','2195 FREDERICK DOUGLASS BLVD','New York','New York','NY',10026), 495 | ('TD Bank N.A.','100 West 125th Street ','New York','New York','NY',10027), 496 | ('Citibank N. A.','1310 Amsterdam Avenue','New York','New York','NY',10027), 497 | ('Citibank N. A.','201 West 125th Street','New York','New York','NY',10027), 498 | ('Bank of America N.A. GA1-006-15-40','215 West 125th Street','New York','New York','NY',10027), 499 | ('Banco Popular North America','231 West 125th Street','New York','New York','NY',10027), 500 | ('Capital One, N.A.','2310 Frederick Douglas Boulevard','New York','New York','NY',10027), 501 | ('Municipal Credit Union','280 St. Nicholas Avenue','New York','New York','NY',10027), 502 | ('TD Bank N.A.','300 West 125th Street','New York','New York','NY',10027), 503 | ('Capital One, N.A.','301 West 125th Street','New York','New York','NY',10027), 504 | ('Manufacturers and Traders Trust Company','310 Lenox Avenue','New York','New York','NY',10027), 505 | ('JPMorgan Chase Bank, National Association','3200 Broadway','New York','New York','NY',10027), 506 | ('JPMorgan Chase Bank, National Association','322 West 125th Street','New York','New York','NY',10027), 507 | ('JPMorgan Chase Bank, National Association','350 West 125th Street','New York','New York','NY',10027), 508 | ('Citibank N. A.','545 West 114th Street','New York','New York','NY',10027), 509 | ('JPMorgan Chase Bank, National Association','55 West 125th Street','New York','New York','NY',10027), 510 | ('Carver Federal Savings Bank','75 West 125th Street','New York','New York','NY',10027), 511 | ('TD Bank N.A.','1133 Madison Avenue','New York','New York','NY',10028), 512 | ('Apple Bank For Savings','1170 Lexington Avenue','New York','New York','NY',10028), 513 | ('JPMorgan Chase Bank, National Association','12 East 86th Street','New York','New York','NY',10028), 514 | ('Citibank N. A.','123 East 86th Street','New York','New York','NY',10028), 515 | ('JPMorgan Chase Bank, National Association','126 East 86th Street','New York','New York','NY',10028), 516 | ('Bank of America N.A. GA1-006-15-40','1275 Lexington Avenue','New York','New York','NY',10028), 517 | ('Citibank N. A.','1275 Madison Avenue','New York','New York','NY',10028), 518 | ('TD Bank N.A.','1276 Lexington Avenue','New York','New York','NY',10028), 519 | ('Citibank N. A.','1445 East 82nd Street','New York','New York','NY',10028), 520 | ('TD Bank N.A.','1504 Third Avenue','New York','New York','NY',10028), 521 | ('Capital One, N.A.','1536 Third Avenue','New York','New York','NY',10028), 522 | ('Apple Bank For Savings','1555 First Avenue','New York','New York','NY',10028), 523 | ('Ridgewood Savings Bank','1646 First Avenue','New York','New York','NY',10028), 524 | ('HSBC Bank USA, National Association','186 East 86th Street','New York','New York','NY',10028), 525 | ('Santander Bank','225 East 86th Street','New York','New York','NY',10028), 526 | ('JPMorgan Chase Bank, National Association','244 East 86th Street','New York','New York','NY',10028), 527 | ('Wells Fargo ATM','247 E 86th Street','New York','New York','NY',10028), 528 | ('Capital One, N.A.','249 East 86th Street','New York','New York','NY',10028), 529 | ('JPMorgan Chase Bank, National Association','453 East 86th Street','New York','New York','NY',10028), 530 | ('Sterling National Bank of New York','1249 Fifth Avenue','New York','New York','NY',10029), 531 | ('Banco Popular North America','164 East 116th Street','New York','New York','NY',10029), 532 | ('JPMorgan Chase Bank, National Association','179 East 116th Street','New York','New York','NY',10029), 533 | ('JPMorgan Chase Bank, National Association','1924 Third Avenue','New York','New York','NY',10029), 534 | ('Ponce De Leon Federal Bank','1925 Third Avenue','New York','New York','NY',10029), 535 | ('JPMorgan Chase Bank, National Association','2065 Second Avenue','New York','New York','NY',10029), 536 | ('New York National Bank','2256 Second Avenue','New York','New York','NY',10029), 537 | ('Citibank N. A.','2481 Adam Clayton Boulevard','New York','New York','NY',10030), 538 | ('Municipal Credit Union','2518 Frederick Douglas Boulevard','New York','New York','NY',10030), 539 | ('JPMorgan Chase Bank, National Association','300 West 135th Street','New York','New York','NY',10030), 540 | ('JPMorgan Chase Bank, National Association','3359 Broadway','New York','New York','NY',10031), 541 | ('JPMorgan Chase Bank, National Association','3515 Broadway','New York','New York','NY',10031), 542 | ('Banco Popular North America','3540 Broadway','New York','New York','NY',10031), 543 | ('Municipal Credit Union','3621 Broadway @ 149th Street','New York','New York','NY',10031), 544 | ('Capital One, N.A.','700 Saint Nicholas Avenue','New York','New York','NY',10031), 545 | ('Banco Popular North America','1200 St. Nicholas Avenue','New York','New York','NY',10032), 546 | ('TD Bank N.A.','3798 Broadway','New York','New York','NY',10032), 547 | ('Apple Bank For Savings','3815 Broadway','New York','New York','NY',10032), 548 | ('JPMorgan Chase Bank, National Association','3940 Broadway','New York','New York','NY',10032), 549 | ('Citibank N. A.','4058 Broadway','New York','New York','NY',10032), 550 | ('Bank of America N.A. GA1-006-15-40','4061 Broadway','New York','New York','NY',10032), 551 | ('Berkshire Bank, The','210 Pinehurst Avenue','New York','New York','NY',10033), 552 | ('New York National Bank','4211 Broadway','New York','New York','NY',10033), 553 | ('New York Community Bank','4246 BROADWAY','New York','New York','NY',10033), 554 | ('Citibank N. A.','4249 Broadway','New York','New York','NY',10033), 555 | ('JPMorgan Chase Bank, National Association','596 Fort Washington Avenue','New York','New York','NY',10033), 556 | ('Banco Popular North America','615 West 181 Street','New York','New York','NY',10033), 557 | ('Capital One, N.A.','620 West 181st Street','New York','New York','NY',10033), 558 | ('JPMorgan Chase Bank, National Association','659 W 181ST ST','New York','New York','NY',10033), 559 | ('JPMorgan Chase Bank, National Association','659 W 181ST ST','New York','New York','NY',10033), 560 | ('TD Bank N.A.', '4941 Broadway','New York','New York','NY',10034), 561 | ('Citibank N.A.','4949 Broadway','New York','New York','NY',10034), 562 | ('Apple Bank For Savings','4950 Broadway','New York','New York','NY',10034), 563 | ('JPMorgan Chase Bank, National Association','570 West 207th Street','New York','New York','NY',10034), 564 | ('JPMorgan Chase Bank, National Association','103 East 125th Street','New York','New York','NY',10035), 565 | ('Apple Bank For Savings','124 East 125th Street','New York','New York','NY',10035), 566 | ('Bank of America N.A. GA1-006-15-40','157 East 125th Street','New York','New York','NY',10035), 567 | ('Commerce Bank, N.A.','1879 Madison Avenue','New York','New York','NY',10035), 568 | ('TD Bank N.A.','2144 Third Avenue','New York','New York','NY',10035), 569 | ('Citibank N. A.','2261 First Avenue','New York','New York','NY',10035), 570 | ('Manufacturers and Traders Trust Company','11 West 42nd Street','New York','New York','NY',10036), 571 | ('JPMorgan Chase Bank, National Association','1120 Avenue of the Americas','New York','New York','NY',10036), 572 | ('TD Bank N.A.','1120 Avenue of the Americas','New York','New York','NY',10036), 573 | ('Bank of America N.A. GA1-006-15-40','115 West 42nd Street','New York','New York','NY',10036), 574 | ('Citibank N. A.','1155 Avenue of the Americas','New York','New York','NY',10036), 575 | ('Wells Fargo ATM','1156 Avenue of the Americas','New York','New York','NY',10036), 576 | ('Capital One, N.A.','1166 Avenue of the Americas','New York','New York','NY',10036), 577 | ('HSBC Bank USA, National Association','1185 Avenue of the Americas','New York','New York','NY',10036), 578 | ('Metropolitan National Bank','16 West 46th Street','New York','New York','NY',10036), 579 | ('JPMorgan Chase Bank, National Association','3 Times Square','New York','New York','NY',10036), 580 | ('Citibank N. A.','401 West 42nd Street','New York','New York','NY',10036), 581 | ('JPMorgan Chase Bank, National Association','471 West 42nd Street','New York','New York','NY',10036), 582 | ('JPMorgan Chase Bank, National Association','530 Fifth Avenue','New York','New York','NY',10036), 583 | ('Bank of America N.A. GA1-006-15-40','550 Fifth Avenue','New York','New York ','NY',10036), 584 | ('TD Bank N.A.','582-586 Ninth Avenue','New York','New York','NY',10036), 585 | ('Valley National Bank','71 West 47th Street','New York','New York','NY',10036), 586 | ('JPMorgan Chase Bank, National Association','2218 Fifth Avenue','New York','New York','NY',10037), 587 | ('Citibank N. A.','100 William Street','New York','New York','NY',10038), 588 | ('Abacus Federal Savings Bank','104-116 Nassau Street','New York','New York','NY',10038), 589 | ('HSBC Bank USA, National Association','11 East Broadway','New York','New York','NY',10038), 590 | ('HSBC Bank USA, National Association','110 William Street','New York','New York','NY',10038), 591 | ('New York Community Bank','15 MAIDEN LANE','New York','New York','NY',10038), 592 | ('Bank of America N.A. GA1-006-15-40','150 Broadway','New York','New York','NY',10038), 593 | ('JPMorgan Chase Bank, National Association','155 Water Street','New York','New York','NY',10038), 594 | ('Capital One, N.A.','176 Broadway','New York','New York','NY',10038), 595 | ('TD Bank N.A.','182 Broadway','New York','New York','NY',10038), 596 | ('Santander Bank','2 Gold Street','New York','New York','NY',10038), 597 | ('JPMorgan Chase Bank, National Association','214 Broadway','New York','New York','NY',10038), 598 | ('TD Bank N.A.','40 Fulton Street','New York','New York','NY',10038), 599 | ('Global Bank','8 CATHERINE STREET','New York','New York','NY',10038), 600 | ('JPMorgan Chase Bank, National Association','8 CHATHAM SQUARE','New York','New York','NY',10038), 601 | ('JPMorgan Chase Bank, National Association','8 CHATHAM SQUARE','New York','New York','NY',10038), 602 | ('Carver Federal Savings Bank','300 West 145th Street','New York','New York','NY',10039), 603 | ('Bank of America N.A. GA1-006-15-40','301 West 145th Street','New York','New York','NY',10039), 604 | ('JPMorgan Chase Bank, National Association','330 West 145th Street','New York','New York','NY',10039), 605 | ('JPMorgan Chase Bank, National Association','161 Dyckman Street','New York','New York','NY',10040), 606 | ('Banco Popular North America','180 Dyckman Street','New York','New York','NY',10040), 607 | ('Capital One, N.A.','21 Dyckman Street','New York','New York','NY',10040), 608 | ('Bank of America N.A. GA1-006-15-40','210 Dyckman Street','New York','New York ','NY',10040), 609 | ('JPMorgan Chase Bank, National Association','55 Water Street','New York','New York','NY',10041), 610 | ('City National Bank','1140 Sixth Avenue','New York','New York','NY',10063), 611 | ('JPMorgan Chase Bank, National Association','1100 Third Avenue','New York','New York','NY',10065), 612 | ('Bank of America N.A. GA1-006-15-40','1107 Third Avenue','New York','New York','NY',10065), 613 | ('JPMorgan Chase Bank, National Association','1180 Second Avenue','New York','New York','NY',10065), 614 | ('TD Bank N.A.','1240 First Avenue','New York','New York','NY',10065), 615 | ('JPMorgan Chase Bank, National Association','726 Madison Avenue','New York','New York','NY',10065), 616 | ('JPMorgan Chase Bank, National Association','770 Lexington Avenue','New York','New York','NY',10065), 617 | ('JPMorgan Chase Bank, National Association','941 Lexington Avenue','New York','New York','NY',10065), 618 | ('Teachers Federal Credit Union','180 Riverside Blvd','New York','New York','NY',10069), 619 | ('JPMorgan Chase Bank, National Association','1025 Madison Avenue','New York','New York','NY',10075), 620 | ('Citibank N. A.','1042 Madison Avenue','New York','New York','NY',10075), 621 | ('First Republic Bank','148 East 79th Street','New York','New York','NY',10075), 622 | ('JPMorgan Chase Bank, National Association','1495 York Avenue','New York','New York','NY',10075), 623 | ('Capital One, N.A.','1510 Second Avenue','New York','New York','NY',10075), 624 | ('JPMorgan Chase Bank, National Association','201 East 79th Street','New York','New York','NY',10075), 625 | ('Citibank N. A.','666 Fifth Avenue','New York','New York','NY',10103), 626 | ('HSBC Bank USA, National Association','666 Fifth Avenue','New York','New York','NY',10103), 627 | ('Citibank N. A.','1345 Avenue of the Americas','New York','New York','NY',10105), 628 | ('HSBC Bank USA, National Association','252 West 57th Street','New York','New York','NY',10107), 629 | ('Bank of America N.A. GA1-006-15-40','One Penn Plaza East','New York','New York','NY',10119), 630 | ('JPMorgan Chase Bank, National Association','2 Penn Plaza','New York','New York','NY',10121), 631 | ('JPMorgan Chase Bank, National Association','2 PENN PLZ','New York','New York','NY',10121), 632 | ('JPMorgan Chase Bank, National Association','2 PENN PLZ','New York','New York','NY',10121), 633 | ('JPMorgan Chase Bank, National Association','1221 Madison Avenue','New York','New York','NY',10128), 634 | ('Citibank N. A.','1391 Madison Avenue','New York','New York','NY',10128), 635 | ('Valley National Bank','1569 Third Avenue','New York','New York','NY',10128), 636 | ('TD Bank N.A.','1709 Third Avenue','New York','New York','NY',10128), 637 | ('Citibank N. A.','1781 First Avenue','New York','New York','NY',10128), 638 | ('JPMorgan Chase Bank, National Association','1801 Second Avenue','New York','New York','NY',10128), 639 | ('JPMorgan Chase Bank, National Association','181 East 90th Street','New York','New York','NY',10128), 640 | ('Citibank N. A.','340 East 93rd Street','New York','New York','NY',10128), 641 | ('HSBC Bank USA, National Association','45 East 89th Street','New York','New York','NY',10128), 642 | ('Bank of America N.A. GA1-006-15-40','345 Park Avenue','New York','New York','NY',10154), 643 | ('HSBC Bank USA, National Association','617 Third Avenue','New York','New York','NY',10158), 644 | ('Citibank N. A.','200 Park Avenue','New York','New York','NY',10166), 645 | ('Bank of America N.A. GA1-006-15-40','200 Park Avenue','New York','New York','NY',10166), 646 | ('Apple Bank For Savings','122 EAST 42ND STREET','New York','New York','NY',10168), 647 | ('JPMorgan Chase Bank, National Association','405 Lexington Avenue','New York','New York','NY',10174), 648 | ('Bank of America N.A. GA1-006-15-40','425 Lexington Avenue','New York','New York','NY',10174), 649 | ('HSBC Bank USA, National Association','101 Park Avenue','New York','New York','NY',10178), 650 | ('HSBC Bank USA, National Association','117 Broadway','New York','New York','NY',10271), 651 | ('Valley National Bank','120 Broadway','New York','New York','NY',10271), 652 | ('Citibank N. A.','120 Broadway','New York','New York','NY',10271), 653 | ('JPMorgan Chase Bank, National Association','331-337 South End Avenue','New York','New York','NY',10280), 654 | ('USAlliance Financial','200 Vesey Street','New York','New York','NY',10281), 655 | ('TD Bank N.A.','90 Fifth Avenue','New York','New York','NY',11011); 656 | -------------------------------------------------------------------------------- /Chapter03/Figure3-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-1.png -------------------------------------------------------------------------------- /Chapter03/Figure3-10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-10.png -------------------------------------------------------------------------------- /Chapter03/Figure3-11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-11.png -------------------------------------------------------------------------------- /Chapter03/Figure3-12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-12.png -------------------------------------------------------------------------------- /Chapter03/Figure3-13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-13.png -------------------------------------------------------------------------------- /Chapter03/Figure3-14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-14.png -------------------------------------------------------------------------------- /Chapter03/Figure3-15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-15.png -------------------------------------------------------------------------------- /Chapter03/Figure3-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-16.png -------------------------------------------------------------------------------- /Chapter03/Figure3-17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-17.png -------------------------------------------------------------------------------- /Chapter03/Figure3-18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-18.png -------------------------------------------------------------------------------- /Chapter03/Figure3-19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-19.png -------------------------------------------------------------------------------- /Chapter03/Figure3-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-2.png -------------------------------------------------------------------------------- /Chapter03/Figure3-20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-20.png -------------------------------------------------------------------------------- /Chapter03/Figure3-21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-21.png -------------------------------------------------------------------------------- /Chapter03/Figure3-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-3.png -------------------------------------------------------------------------------- /Chapter03/Figure3-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-4.png -------------------------------------------------------------------------------- /Chapter03/Figure3-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-5.png -------------------------------------------------------------------------------- /Chapter03/Figure3-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-6.png -------------------------------------------------------------------------------- /Chapter03/Figure3-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-7.png -------------------------------------------------------------------------------- /Chapter03/Figure3-8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-8.png -------------------------------------------------------------------------------- /Chapter03/Figure3-9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Developing-Modern-Database-Applications-with-PostgreSQL/d066a991297eca30fa96a2ccfb386e31938e10e2/Chapter03/Figure3-9.png -------------------------------------------------------------------------------- /Chapter03/NodeJS_Angular_Script.sh: -------------------------------------------------------------------------------- 1 | 2 | [centos@ip-172-31-95-213 ~]$ sudo su 3 | [root@ip-172-31-95-213 centos]# cd /usr/local/src/ 4 | 5 | # Install NodeJS 6 | [root@ip-172-31-95-213 src]# yum install wget 7 | Please enter 'y' for yes when asked 8 | [root@ip-172-31-95-213 src]# yum install -y gcc-c++ make 9 | 10 | [root@ip-172-31-95-213 src]# curl -sL https://rpm.nodesource.com/setup_10.x | sudo -E bash 11 | 12 | [root@ip-172-31-95-213 src]# yum install nodejs 13 | Please enter 'y' for yes when asked 14 | 15 | [root@ip-172-31-95-213 src]# node -v 16 | v10.15.3 17 | [root@ip-172-31-95-213 src]# npm -v 18 | 6.4.1 19 | 20 | # Create API project folder 21 | [root@ip-172-31-95-213 src]# mkdir node-api-postgres 22 | [root@ip-172-31-95-213 src]# cd node-api-postgres 23 | [root@ip-172-31-95-213 node-api-postgres]# 24 | 25 | # Install Express 26 | [root@ip-172-31-95-213 node-api-postgres]# npm install express-generator -g 27 | [root@ip-172-31-95-213 node-api-postgres]# npm install express -g 28 | [root@ip-172-31-95-213 node-api-postgres]# express node-api 29 | 30 | [root@ip-172-31-95-213 node-api-postgres]# cd node-api 31 | [root@ip-172-31-95-213 node-api]# npm install 32 | 33 | # Install pg-promise and bluebird 34 | [root@ip-172-31-95-213 node-api]# npm install pg-promise -g 35 | [root@ip-172-31-95-213 node-api]# npm install bluebird -g 36 | 37 | [root@ip-172-31-95-213 node-api]# npm install serve-favicon 38 | 39 | [root@ip-172-31-95-213 node-api]# npm install --save bluebird 40 | [root@ip-172-31-95-213 node-api]# npm install --save pg-promise 41 | 42 | # Install Angular 43 | [root@ip-172-31-95-213 node-api]# npm install -g @angular/cli 44 | -------------------------------------------------------------------------------- /Chapter03/node-api/app.js: -------------------------------------------------------------------------------- 1 | var createError = require('http-errors'); 2 | var express = require('express'); 3 | var path = require('path'); 4 | var cookieParser = require('cookie-parser'); 5 | var logger = require('morgan'); 6 | 7 | var indexRouter = require('./routes/index'); 8 | var usersRouter = require('./routes/users'); 9 | 10 | var favicon = require('serve-favicon'); 11 | var bodyParser = require('body-parser'); 12 | 13 | var app = express(); 14 | 15 | // view engine setup 16 | app.set('views', path.join(__dirname, 'views')); 17 | app.set('view engine', 'jade'); 18 | 19 | app.use(logger('dev')); 20 | app.use(express.json()); 21 | app.use(express.urlencoded({ extended: false })); 22 | app.use(cookieParser()); 23 | app.use(express.static(path.join(__dirname, 'public'))); 24 | 25 | app.use('/', indexRouter); 26 | app.use('/users', usersRouter); 27 | 28 | // catch 404 and forward to error handler 29 | app.use(function(req, res, next) { 30 | next(createError(404)); 31 | }); 32 | 33 | // error handler 34 | app.use(function(err, req, res, next) { 35 | // set locals, only providing error in development 36 | res.locals.message = err.message; 37 | res.locals.error = req.app.get('env') === 'development' ? err : {}; 38 | 39 | // render the error page 40 | res.status(err.status || 500); 41 | res.render('error'); 42 | }); 43 | 44 | module.exports = app; 45 | -------------------------------------------------------------------------------- /Chapter03/node-api/bin/www: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | /** 4 | * Module dependencies. 5 | */ 6 | 7 | var app = require('../app'); 8 | var debug = require('debug')('node-api:server'); 9 | var http = require('http'); 10 | 11 | /** 12 | * Get port from environment and store in Express. 13 | */ 14 | 15 | var port = normalizePort(process.env.PORT || '3000'); 16 | app.set('port', port); 17 | 18 | /** 19 | * Create HTTP server. 20 | */ 21 | 22 | var server = http.createServer(app); 23 | 24 | /** 25 | * Listen on provided port, on all network interfaces. 26 | */ 27 | 28 | server.listen(port); 29 | server.on('error', onError); 30 | server.on('listening', onListening); 31 | 32 | /** 33 | * Normalize a port into a number, string, or false. 34 | */ 35 | 36 | function normalizePort(val) { 37 | var port = parseInt(val, 10); 38 | 39 | if (isNaN(port)) { 40 | // named pipe 41 | return val; 42 | } 43 | 44 | if (port >= 0) { 45 | // port number 46 | return port; 47 | } 48 | 49 | return false; 50 | } 51 | 52 | /** 53 | * Event listener for HTTP server "error" event. 54 | */ 55 | 56 | function onError(error) { 57 | if (error.syscall !== 'listen') { 58 | throw error; 59 | } 60 | 61 | var bind = typeof port === 'string' 62 | ? 'Pipe ' + port 63 | : 'Port ' + port; 64 | 65 | // handle specific listen errors with friendly messages 66 | switch (error.code) { 67 | case 'EACCES': 68 | console.error(bind + ' requires elevated privileges'); 69 | process.exit(1); 70 | break; 71 | case 'EADDRINUSE': 72 | console.error(bind + ' is already in use'); 73 | process.exit(1); 74 | break; 75 | default: 76 | throw error; 77 | } 78 | } 79 | 80 | /** 81 | * Event listener for HTTP server "listening" event. 82 | */ 83 | 84 | function onListening() { 85 | var addr = server.address(); 86 | var bind = typeof addr === 'string' 87 | ? 'pipe ' + addr 88 | : 'port ' + addr.port; 89 | debug('Listening on ' + bind); 90 | } 91 | -------------------------------------------------------------------------------- /Chapter03/node-api/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "node-api", 3 | "version": "0.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "accepts": { 8 | "version": "1.3.7", 9 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", 10 | "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", 11 | "requires": { 12 | "mime-types": "~2.1.24", 13 | "negotiator": "0.6.2" 14 | } 15 | }, 16 | "acorn": { 17 | "version": "2.7.0", 18 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-2.7.0.tgz", 19 | "integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc=" 20 | }, 21 | "acorn-globals": { 22 | "version": "1.0.9", 23 | "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-1.0.9.tgz", 24 | "integrity": "sha1-VbtemGkVB7dFedBRNBMhfDgMVM8=", 25 | "requires": { 26 | "acorn": "^2.1.0" 27 | } 28 | }, 29 | "align-text": { 30 | "version": "0.1.4", 31 | "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", 32 | "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", 33 | "requires": { 34 | "kind-of": "^3.0.2", 35 | "longest": "^1.0.1", 36 | "repeat-string": "^1.5.2" 37 | } 38 | }, 39 | "amdefine": { 40 | "version": "1.0.1", 41 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", 42 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" 43 | }, 44 | "array-flatten": { 45 | "version": "1.1.1", 46 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 47 | "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" 48 | }, 49 | "asap": { 50 | "version": "1.0.0", 51 | "resolved": "https://registry.npmjs.org/asap/-/asap-1.0.0.tgz", 52 | "integrity": "sha1-sqRdpf36ILBJb8N2jMJ8EvqRan0=" 53 | }, 54 | "assert-options": { 55 | "version": "0.1.3", 56 | "resolved": "https://registry.npmjs.org/assert-options/-/assert-options-0.1.3.tgz", 57 | "integrity": "sha512-DXrZ5WkCv/igD+H8OmeUTl9k0pBhYSTdyA7DRZoSJERCzQ8Z2v85yDjkhYVnHUOeCXGfCNKaogRbLWQsIQbtpg==" 58 | }, 59 | "basic-auth": { 60 | "version": "2.0.1", 61 | "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", 62 | "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", 63 | "requires": { 64 | "safe-buffer": "5.1.2" 65 | } 66 | }, 67 | "bluebird": { 68 | "version": "3.5.4", 69 | "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.4.tgz", 70 | "integrity": "sha512-FG+nFEZChJrbQ9tIccIfZJBz3J7mLrAhxakAbnrJWn8d7aKOC+LWifa0G+p4ZqKp4y13T7juYvdhq9NzKdsrjw==" 71 | }, 72 | "body-parser": { 73 | "version": "1.18.3", 74 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", 75 | "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", 76 | "requires": { 77 | "bytes": "3.0.0", 78 | "content-type": "~1.0.4", 79 | "debug": "2.6.9", 80 | "depd": "~1.1.2", 81 | "http-errors": "~1.6.3", 82 | "iconv-lite": "0.4.23", 83 | "on-finished": "~2.3.0", 84 | "qs": "6.5.2", 85 | "raw-body": "2.3.3", 86 | "type-is": "~1.6.16" 87 | } 88 | }, 89 | "buffer-writer": { 90 | "version": "2.0.0", 91 | "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", 92 | "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==" 93 | }, 94 | "bytes": { 95 | "version": "3.0.0", 96 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", 97 | "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" 98 | }, 99 | "camelcase": { 100 | "version": "1.2.1", 101 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", 102 | "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" 103 | }, 104 | "center-align": { 105 | "version": "0.1.3", 106 | "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", 107 | "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", 108 | "requires": { 109 | "align-text": "^0.1.3", 110 | "lazy-cache": "^1.0.3" 111 | } 112 | }, 113 | "character-parser": { 114 | "version": "1.2.1", 115 | "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-1.2.1.tgz", 116 | "integrity": "sha1-wN3kqxgnE7kZuXCVmhI+zBow/NY=" 117 | }, 118 | "clean-css": { 119 | "version": "3.4.28", 120 | "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", 121 | "integrity": "sha1-vxlF6C/ICPVWlebd6uwBQA79A/8=", 122 | "requires": { 123 | "commander": "2.8.x", 124 | "source-map": "0.4.x" 125 | }, 126 | "dependencies": { 127 | "commander": { 128 | "version": "2.8.1", 129 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.8.1.tgz", 130 | "integrity": "sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ=", 131 | "requires": { 132 | "graceful-readlink": ">= 1.0.0" 133 | } 134 | } 135 | } 136 | }, 137 | "cliui": { 138 | "version": "2.1.0", 139 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", 140 | "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", 141 | "requires": { 142 | "center-align": "^0.1.1", 143 | "right-align": "^0.1.1", 144 | "wordwrap": "0.0.2" 145 | }, 146 | "dependencies": { 147 | "wordwrap": { 148 | "version": "0.0.2", 149 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", 150 | "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" 151 | } 152 | } 153 | }, 154 | "commander": { 155 | "version": "2.6.0", 156 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.6.0.tgz", 157 | "integrity": "sha1-nfflL7Kgyw+4kFjugMMQQiXzfh0=" 158 | }, 159 | "constantinople": { 160 | "version": "3.0.2", 161 | "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.0.2.tgz", 162 | "integrity": "sha1-S5RdmTeQe82Y7ldRIsOBdRZUQUE=", 163 | "requires": { 164 | "acorn": "^2.1.0" 165 | } 166 | }, 167 | "content-disposition": { 168 | "version": "0.5.2", 169 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", 170 | "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" 171 | }, 172 | "content-type": { 173 | "version": "1.0.4", 174 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", 175 | "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" 176 | }, 177 | "cookie": { 178 | "version": "0.3.1", 179 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", 180 | "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" 181 | }, 182 | "cookie-parser": { 183 | "version": "1.4.4", 184 | "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.4.tgz", 185 | "integrity": "sha512-lo13tqF3JEtFO7FyA49CqbhaFkskRJ0u/UAiINgrIXeRCY41c88/zxtrECl8AKH3B0hj9q10+h3Kt8I7KlW4tw==", 186 | "requires": { 187 | "cookie": "0.3.1", 188 | "cookie-signature": "1.0.6" 189 | } 190 | }, 191 | "cookie-signature": { 192 | "version": "1.0.6", 193 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 194 | "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" 195 | }, 196 | "css": { 197 | "version": "1.0.8", 198 | "resolved": "https://registry.npmjs.org/css/-/css-1.0.8.tgz", 199 | "integrity": "sha1-k4aBHKgrzMnuf7WnMrHioxfIo+c=", 200 | "requires": { 201 | "css-parse": "1.0.4", 202 | "css-stringify": "1.0.5" 203 | } 204 | }, 205 | "css-parse": { 206 | "version": "1.0.4", 207 | "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.0.4.tgz", 208 | "integrity": "sha1-OLBQP7+dqfVOnB29pg4UXHcRe90=" 209 | }, 210 | "css-stringify": { 211 | "version": "1.0.5", 212 | "resolved": "https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz", 213 | "integrity": "sha1-sNBClG2ylTu50pKQCmy19tASIDE=" 214 | }, 215 | "debug": { 216 | "version": "2.6.9", 217 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 218 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 219 | "requires": { 220 | "ms": "2.0.0" 221 | } 222 | }, 223 | "decamelize": { 224 | "version": "1.2.0", 225 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 226 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" 227 | }, 228 | "depd": { 229 | "version": "1.1.2", 230 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", 231 | "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" 232 | }, 233 | "destroy": { 234 | "version": "1.0.4", 235 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 236 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 237 | }, 238 | "ee-first": { 239 | "version": "1.1.1", 240 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 241 | "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" 242 | }, 243 | "encodeurl": { 244 | "version": "1.0.2", 245 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 246 | "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" 247 | }, 248 | "escape-html": { 249 | "version": "1.0.3", 250 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 251 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" 252 | }, 253 | "etag": { 254 | "version": "1.8.1", 255 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 256 | "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" 257 | }, 258 | "express": { 259 | "version": "4.16.4", 260 | "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", 261 | "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", 262 | "requires": { 263 | "accepts": "~1.3.5", 264 | "array-flatten": "1.1.1", 265 | "body-parser": "1.18.3", 266 | "content-disposition": "0.5.2", 267 | "content-type": "~1.0.4", 268 | "cookie": "0.3.1", 269 | "cookie-signature": "1.0.6", 270 | "debug": "2.6.9", 271 | "depd": "~1.1.2", 272 | "encodeurl": "~1.0.2", 273 | "escape-html": "~1.0.3", 274 | "etag": "~1.8.1", 275 | "finalhandler": "1.1.1", 276 | "fresh": "0.5.2", 277 | "merge-descriptors": "1.0.1", 278 | "methods": "~1.1.2", 279 | "on-finished": "~2.3.0", 280 | "parseurl": "~1.3.2", 281 | "path-to-regexp": "0.1.7", 282 | "proxy-addr": "~2.0.4", 283 | "qs": "6.5.2", 284 | "range-parser": "~1.2.0", 285 | "safe-buffer": "5.1.2", 286 | "send": "0.16.2", 287 | "serve-static": "1.13.2", 288 | "setprototypeof": "1.1.0", 289 | "statuses": "~1.4.0", 290 | "type-is": "~1.6.16", 291 | "utils-merge": "1.0.1", 292 | "vary": "~1.1.2" 293 | } 294 | }, 295 | "finalhandler": { 296 | "version": "1.1.1", 297 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", 298 | "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", 299 | "requires": { 300 | "debug": "2.6.9", 301 | "encodeurl": "~1.0.2", 302 | "escape-html": "~1.0.3", 303 | "on-finished": "~2.3.0", 304 | "parseurl": "~1.3.2", 305 | "statuses": "~1.4.0", 306 | "unpipe": "~1.0.0" 307 | } 308 | }, 309 | "forwarded": { 310 | "version": "0.1.2", 311 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", 312 | "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" 313 | }, 314 | "fresh": { 315 | "version": "0.5.2", 316 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 317 | "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 318 | }, 319 | "graceful-readlink": { 320 | "version": "1.0.1", 321 | "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", 322 | "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" 323 | }, 324 | "http-errors": { 325 | "version": "1.6.3", 326 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", 327 | "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", 328 | "requires": { 329 | "depd": "~1.1.2", 330 | "inherits": "2.0.3", 331 | "setprototypeof": "1.1.0", 332 | "statuses": ">= 1.4.0 < 2" 333 | } 334 | }, 335 | "iconv-lite": { 336 | "version": "0.4.23", 337 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", 338 | "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", 339 | "requires": { 340 | "safer-buffer": ">= 2.1.2 < 3" 341 | } 342 | }, 343 | "inherits": { 344 | "version": "2.0.3", 345 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 346 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 347 | }, 348 | "ipaddr.js": { 349 | "version": "1.9.0", 350 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", 351 | "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" 352 | }, 353 | "is-buffer": { 354 | "version": "1.1.6", 355 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 356 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" 357 | }, 358 | "is-promise": { 359 | "version": "2.1.0", 360 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 361 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" 362 | }, 363 | "jade": { 364 | "version": "1.11.0", 365 | "resolved": "https://registry.npmjs.org/jade/-/jade-1.11.0.tgz", 366 | "integrity": "sha1-nIDlOMEtP7lcjZu5VZ+gzAQEBf0=", 367 | "requires": { 368 | "character-parser": "1.2.1", 369 | "clean-css": "^3.1.9", 370 | "commander": "~2.6.0", 371 | "constantinople": "~3.0.1", 372 | "jstransformer": "0.0.2", 373 | "mkdirp": "~0.5.0", 374 | "transformers": "2.1.0", 375 | "uglify-js": "^2.4.19", 376 | "void-elements": "~2.0.1", 377 | "with": "~4.0.0" 378 | } 379 | }, 380 | "jstransformer": { 381 | "version": "0.0.2", 382 | "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-0.0.2.tgz", 383 | "integrity": "sha1-eq4pqQPRls+glz2IXT5HlH7Ndqs=", 384 | "requires": { 385 | "is-promise": "^2.0.0", 386 | "promise": "^6.0.1" 387 | } 388 | }, 389 | "kind-of": { 390 | "version": "3.2.2", 391 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 392 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 393 | "requires": { 394 | "is-buffer": "^1.1.5" 395 | } 396 | }, 397 | "lazy-cache": { 398 | "version": "1.0.4", 399 | "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", 400 | "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" 401 | }, 402 | "longest": { 403 | "version": "1.0.1", 404 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", 405 | "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=" 406 | }, 407 | "manakin": { 408 | "version": "0.5.2", 409 | "resolved": "https://registry.npmjs.org/manakin/-/manakin-0.5.2.tgz", 410 | "integrity": "sha512-pfDSB7QYoVg0Io4KMV9hhPoXpj6p0uBscgtyUSKCOFZe8bqgbpStfgnKIbF/ulnr6U3ICu4OqdyxAqBgOhZwBQ==" 411 | }, 412 | "media-typer": { 413 | "version": "0.3.0", 414 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 415 | "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 416 | }, 417 | "merge-descriptors": { 418 | "version": "1.0.1", 419 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 420 | "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" 421 | }, 422 | "methods": { 423 | "version": "1.1.2", 424 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 425 | "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" 426 | }, 427 | "mime": { 428 | "version": "1.4.1", 429 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", 430 | "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" 431 | }, 432 | "mime-db": { 433 | "version": "1.40.0", 434 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", 435 | "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" 436 | }, 437 | "mime-types": { 438 | "version": "2.1.24", 439 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", 440 | "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", 441 | "requires": { 442 | "mime-db": "1.40.0" 443 | } 444 | }, 445 | "minimist": { 446 | "version": "0.0.8", 447 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 448 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 449 | }, 450 | "mkdirp": { 451 | "version": "0.5.1", 452 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 453 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 454 | "requires": { 455 | "minimist": "0.0.8" 456 | } 457 | }, 458 | "morgan": { 459 | "version": "1.9.1", 460 | "resolved": "https://registry.npmjs.org/morgan/-/morgan-1.9.1.tgz", 461 | "integrity": "sha512-HQStPIV4y3afTiCYVxirakhlCfGkI161c76kKFca7Fk1JusM//Qeo1ej2XaMniiNeaZklMVrh3vTtIzpzwbpmA==", 462 | "requires": { 463 | "basic-auth": "~2.0.0", 464 | "debug": "2.6.9", 465 | "depd": "~1.1.2", 466 | "on-finished": "~2.3.0", 467 | "on-headers": "~1.0.1" 468 | } 469 | }, 470 | "ms": { 471 | "version": "2.0.0", 472 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 473 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 474 | }, 475 | "negotiator": { 476 | "version": "0.6.2", 477 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", 478 | "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" 479 | }, 480 | "on-finished": { 481 | "version": "2.3.0", 482 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 483 | "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", 484 | "requires": { 485 | "ee-first": "1.1.1" 486 | } 487 | }, 488 | "on-headers": { 489 | "version": "1.0.2", 490 | "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", 491 | "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" 492 | }, 493 | "optimist": { 494 | "version": "0.3.7", 495 | "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", 496 | "integrity": "sha1-yQlBrVnkJzMokjB00s8ufLxuwNk=", 497 | "requires": { 498 | "wordwrap": "~0.0.2" 499 | } 500 | }, 501 | "packet-reader": { 502 | "version": "1.0.0", 503 | "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", 504 | "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" 505 | }, 506 | "parseurl": { 507 | "version": "1.3.3", 508 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 509 | "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" 510 | }, 511 | "path-to-regexp": { 512 | "version": "0.1.7", 513 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 514 | "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" 515 | }, 516 | "pg": { 517 | "version": "7.11.0", 518 | "resolved": "https://registry.npmjs.org/pg/-/pg-7.11.0.tgz", 519 | "integrity": "sha512-YO4V7vCmEMGoF390LJaFaohWNKaA2ayoQOEZmiHVcAUF+YsRThpf/TaKCgSvsSE7cDm37Q/Cy3Gz41xiX/XjTw==", 520 | "requires": { 521 | "buffer-writer": "2.0.0", 522 | "packet-reader": "1.0.0", 523 | "pg-connection-string": "0.1.3", 524 | "pg-pool": "^2.0.4", 525 | "pg-types": "~2.0.0", 526 | "pgpass": "1.x", 527 | "semver": "4.3.2" 528 | } 529 | }, 530 | "pg-connection-string": { 531 | "version": "0.1.3", 532 | "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-0.1.3.tgz", 533 | "integrity": "sha1-2hhHsglA5C7hSSvq9l1J2RskXfc=" 534 | }, 535 | "pg-int8": { 536 | "version": "1.0.1", 537 | "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", 538 | "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==" 539 | }, 540 | "pg-minify": { 541 | "version": "1.2.0", 542 | "resolved": "https://registry.npmjs.org/pg-minify/-/pg-minify-1.2.0.tgz", 543 | "integrity": "sha512-T5oIs7KRDUghFrR73Dwqj6CSMJUQYZWqbPmDz312VcvZrTdG2SKy5AzSJJz4snZkLRMzXbNjhOZfqI/CH0IKPw==" 544 | }, 545 | "pg-pool": { 546 | "version": "2.0.6", 547 | "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-2.0.6.tgz", 548 | "integrity": "sha512-hod2zYQxM8Gt482q+qONGTYcg/qVcV32VHVPtktbBJs0us3Dj7xibISw0BAAXVMCzt8A/jhfJvpZaxUlqtqs0g==" 549 | }, 550 | "pg-promise": { 551 | "version": "8.7.2", 552 | "resolved": "https://registry.npmjs.org/pg-promise/-/pg-promise-8.7.2.tgz", 553 | "integrity": "sha512-vPKl8TFujeaQbSz4t+ltf6zAfBkKFZznWmoKeiNN7LHQLnj2toEomyCbKmDdFMfSIPmkJ3seQKC7AQhOV2bg2A==", 554 | "requires": { 555 | "assert-options": "0.1.3", 556 | "manakin": "0.5.2", 557 | "pg": "7.11.0", 558 | "pg-minify": "1.2.0", 559 | "spex": "2.2.0" 560 | } 561 | }, 562 | "pg-types": { 563 | "version": "2.0.1", 564 | "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.0.1.tgz", 565 | "integrity": "sha512-b7y6QM1VF5nOeX9ukMQ0h8a9z89mojrBHXfJeSug4mhL0YpxNBm83ot2TROyoAmX/ZOX3UbwVO4EbH7i1ZZNiw==", 566 | "requires": { 567 | "pg-int8": "1.0.1", 568 | "postgres-array": "~2.0.0", 569 | "postgres-bytea": "~1.0.0", 570 | "postgres-date": "~1.0.4", 571 | "postgres-interval": "^1.1.0" 572 | } 573 | }, 574 | "pgpass": { 575 | "version": "1.0.2", 576 | "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.2.tgz", 577 | "integrity": "sha1-Knu0G2BltnkH6R2hsHwYR8h3swY=", 578 | "requires": { 579 | "split": "^1.0.0" 580 | } 581 | }, 582 | "postgres-array": { 583 | "version": "2.0.0", 584 | "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", 585 | "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==" 586 | }, 587 | "postgres-bytea": { 588 | "version": "1.0.0", 589 | "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz", 590 | "integrity": "sha1-AntTPAqokOJtFy1Hz5zOzFIazTU=" 591 | }, 592 | "postgres-date": { 593 | "version": "1.0.4", 594 | "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.4.tgz", 595 | "integrity": "sha512-bESRvKVuTrjoBluEcpv2346+6kgB7UlnqWZsnbnCccTNq/pqfj1j6oBaN5+b/NrDXepYUT/HKadqv3iS9lJuVA==" 596 | }, 597 | "postgres-interval": { 598 | "version": "1.2.0", 599 | "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz", 600 | "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==", 601 | "requires": { 602 | "xtend": "^4.0.0" 603 | } 604 | }, 605 | "promise": { 606 | "version": "6.1.0", 607 | "resolved": "https://registry.npmjs.org/promise/-/promise-6.1.0.tgz", 608 | "integrity": "sha1-LOcp9rlLRcJoka0GAsXJDgTG7vY=", 609 | "requires": { 610 | "asap": "~1.0.0" 611 | } 612 | }, 613 | "proxy-addr": { 614 | "version": "2.0.5", 615 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", 616 | "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", 617 | "requires": { 618 | "forwarded": "~0.1.2", 619 | "ipaddr.js": "1.9.0" 620 | } 621 | }, 622 | "qs": { 623 | "version": "6.5.2", 624 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", 625 | "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" 626 | }, 627 | "range-parser": { 628 | "version": "1.2.0", 629 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", 630 | "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=" 631 | }, 632 | "raw-body": { 633 | "version": "2.3.3", 634 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", 635 | "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", 636 | "requires": { 637 | "bytes": "3.0.0", 638 | "http-errors": "1.6.3", 639 | "iconv-lite": "0.4.23", 640 | "unpipe": "1.0.0" 641 | } 642 | }, 643 | "repeat-string": { 644 | "version": "1.6.1", 645 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 646 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" 647 | }, 648 | "right-align": { 649 | "version": "0.1.3", 650 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", 651 | "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", 652 | "requires": { 653 | "align-text": "^0.1.1" 654 | } 655 | }, 656 | "safe-buffer": { 657 | "version": "5.1.2", 658 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 659 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 660 | }, 661 | "safer-buffer": { 662 | "version": "2.1.2", 663 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 664 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 665 | }, 666 | "semver": { 667 | "version": "4.3.2", 668 | "resolved": "https://registry.npmjs.org/semver/-/semver-4.3.2.tgz", 669 | "integrity": "sha1-x6BxWKgL7dBSNVt3DYLWZA+AO+c=" 670 | }, 671 | "send": { 672 | "version": "0.16.2", 673 | "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", 674 | "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", 675 | "requires": { 676 | "debug": "2.6.9", 677 | "depd": "~1.1.2", 678 | "destroy": "~1.0.4", 679 | "encodeurl": "~1.0.2", 680 | "escape-html": "~1.0.3", 681 | "etag": "~1.8.1", 682 | "fresh": "0.5.2", 683 | "http-errors": "~1.6.2", 684 | "mime": "1.4.1", 685 | "ms": "2.0.0", 686 | "on-finished": "~2.3.0", 687 | "range-parser": "~1.2.0", 688 | "statuses": "~1.4.0" 689 | } 690 | }, 691 | "serve-favicon": { 692 | "version": "2.5.0", 693 | "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz", 694 | "integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=", 695 | "requires": { 696 | "etag": "~1.8.1", 697 | "fresh": "0.5.2", 698 | "ms": "2.1.1", 699 | "parseurl": "~1.3.2", 700 | "safe-buffer": "5.1.1" 701 | }, 702 | "dependencies": { 703 | "ms": { 704 | "version": "2.1.1", 705 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", 706 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" 707 | }, 708 | "safe-buffer": { 709 | "version": "5.1.1", 710 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 711 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 712 | } 713 | } 714 | }, 715 | "serve-static": { 716 | "version": "1.13.2", 717 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", 718 | "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", 719 | "requires": { 720 | "encodeurl": "~1.0.2", 721 | "escape-html": "~1.0.3", 722 | "parseurl": "~1.3.2", 723 | "send": "0.16.2" 724 | } 725 | }, 726 | "setprototypeof": { 727 | "version": "1.1.0", 728 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", 729 | "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" 730 | }, 731 | "source-map": { 732 | "version": "0.4.4", 733 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", 734 | "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", 735 | "requires": { 736 | "amdefine": ">=0.0.4" 737 | } 738 | }, 739 | "spex": { 740 | "version": "2.2.0", 741 | "resolved": "https://registry.npmjs.org/spex/-/spex-2.2.0.tgz", 742 | "integrity": "sha512-iwBxqKe4ZKD+P/i/WdzWw5qxmerHvzVb29wQm4zwYaDPuwsTKjS7nbqt8OyBSLAi2q0ZFUN3F2b4erX0UwF0fA==" 743 | }, 744 | "split": { 745 | "version": "1.0.1", 746 | "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", 747 | "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", 748 | "requires": { 749 | "through": "2" 750 | } 751 | }, 752 | "statuses": { 753 | "version": "1.4.0", 754 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", 755 | "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" 756 | }, 757 | "through": { 758 | "version": "2.3.8", 759 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 760 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 761 | }, 762 | "transformers": { 763 | "version": "2.1.0", 764 | "resolved": "https://registry.npmjs.org/transformers/-/transformers-2.1.0.tgz", 765 | "integrity": "sha1-XSPLNVYd2F3Gf7hIIwm0fVPM6ac=", 766 | "requires": { 767 | "css": "~1.0.8", 768 | "promise": "~2.0", 769 | "uglify-js": "~2.2.5" 770 | }, 771 | "dependencies": { 772 | "is-promise": { 773 | "version": "1.0.1", 774 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-1.0.1.tgz", 775 | "integrity": "sha1-MVc3YcBX4zwukaq56W2gjO++duU=" 776 | }, 777 | "promise": { 778 | "version": "2.0.0", 779 | "resolved": "https://registry.npmjs.org/promise/-/promise-2.0.0.tgz", 780 | "integrity": "sha1-RmSKqdYFr10ucMMCS/WUNtoCuA4=", 781 | "requires": { 782 | "is-promise": "~1" 783 | } 784 | }, 785 | "source-map": { 786 | "version": "0.1.43", 787 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", 788 | "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", 789 | "requires": { 790 | "amdefine": ">=0.0.4" 791 | } 792 | }, 793 | "uglify-js": { 794 | "version": "2.2.5", 795 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.2.5.tgz", 796 | "integrity": "sha1-puAqcNg5eSuXgEiLe4sYTAlcmcc=", 797 | "requires": { 798 | "optimist": "~0.3.5", 799 | "source-map": "~0.1.7" 800 | } 801 | } 802 | } 803 | }, 804 | "type-is": { 805 | "version": "1.6.18", 806 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 807 | "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", 808 | "requires": { 809 | "media-typer": "0.3.0", 810 | "mime-types": "~2.1.24" 811 | } 812 | }, 813 | "uglify-js": { 814 | "version": "2.8.29", 815 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", 816 | "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", 817 | "requires": { 818 | "source-map": "~0.5.1", 819 | "uglify-to-browserify": "~1.0.0", 820 | "yargs": "~3.10.0" 821 | }, 822 | "dependencies": { 823 | "source-map": { 824 | "version": "0.5.7", 825 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 826 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" 827 | } 828 | } 829 | }, 830 | "uglify-to-browserify": { 831 | "version": "1.0.2", 832 | "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", 833 | "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", 834 | "optional": true 835 | }, 836 | "unpipe": { 837 | "version": "1.0.0", 838 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 839 | "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" 840 | }, 841 | "utils-merge": { 842 | "version": "1.0.1", 843 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 844 | "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" 845 | }, 846 | "vary": { 847 | "version": "1.1.2", 848 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 849 | "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 850 | }, 851 | "void-elements": { 852 | "version": "2.0.1", 853 | "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", 854 | "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=" 855 | }, 856 | "window-size": { 857 | "version": "0.1.0", 858 | "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", 859 | "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" 860 | }, 861 | "with": { 862 | "version": "4.0.3", 863 | "resolved": "https://registry.npmjs.org/with/-/with-4.0.3.tgz", 864 | "integrity": "sha1-7v0VTp550sjTQXtkeo8U2f7M4U4=", 865 | "requires": { 866 | "acorn": "^1.0.1", 867 | "acorn-globals": "^1.0.3" 868 | }, 869 | "dependencies": { 870 | "acorn": { 871 | "version": "1.2.2", 872 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-1.2.2.tgz", 873 | "integrity": "sha1-yM4n3grMdtiW0rH6099YjZ6C8BQ=" 874 | } 875 | } 876 | }, 877 | "wordwrap": { 878 | "version": "0.0.3", 879 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", 880 | "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" 881 | }, 882 | "xtend": { 883 | "version": "4.0.1", 884 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", 885 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" 886 | }, 887 | "yargs": { 888 | "version": "3.10.0", 889 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", 890 | "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", 891 | "requires": { 892 | "camelcase": "^1.0.2", 893 | "cliui": "^2.1.0", 894 | "decamelize": "^1.0.0", 895 | "window-size": "0.1.0" 896 | } 897 | } 898 | } 899 | } 900 | -------------------------------------------------------------------------------- /Chapter03/node-api/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "node-api", 3 | "version": "0.0.0", 4 | "private": true, 5 | "scripts": { 6 | "start": "node ./bin/www" 7 | }, 8 | "dependencies": { 9 | "bluebird": "^3.5.4", 10 | "cookie-parser": "~1.4.4", 11 | "debug": "~2.6.9", 12 | "express": "~4.16.1", 13 | "http-errors": "~1.6.3", 14 | "jade": "~1.11.0", 15 | "morgan": "~1.9.1", 16 | "pg-promise": "^8.7.2", 17 | "serve-favicon": "^2.5.0" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Chapter03/node-api/public/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |