ACTIVE
SOLD
Price
Filters

Cranston Calgary Townhomes for Sale | Affordable & Luxury Options

townhomes for sale in Cranston Calgary

Looking for townhomes for sale in Cranston Calgary? Cranston offers a variety of affordable townhomes and luxury townhouses with features suited to all lifestyles. Discover properties with attached garages, modern kitchens, and spacious layouts.

Browse the latest Cranston Calgary townhome listings that offer energy-efficient designs, finished basements, and easy access to nearby parks and schools. Whether you’re seeking a pet-friendly townhome or a property with low condo fees, Cranston has options that cater to your needs. Cranston community guide

Start your search for townhomes in Cranston Calgary today. With choices ranging from new construction townhomes to move-in ready properties with premium upgrades, Cranston provides an ideal location for families, professionals, and first-time buyers.

Contact Diane Richardson
Phone: 403.397.3706
Email: diane@mypadcalgary.com

Cranston Townhouses for sale in Calgary

Townhouses for sale in Cranston Calgary, Row/Townhouse & Semi Detached (Half Duplex) Homes Cranston Calgary

Forgot password Extend Verify Contact
1-12/29
  • 124 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2334839

    124 Cranbrook Square SE Cranston Calgary T3M 3E3
    Main Photo: 124 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2334839
    $212,900
    Residential
    Status:
    Active
    MLS® Num:
    A2334839
    Bedrooms:
    1
    Bathrooms:
    1
    Floor Area:
    572 sq. ft.
    This move-in ready home pairs modern design with a peaceful courtyard setting just moments from the Bow River pathways. Bright, contemporary finishes and a large private patio create an inviting space to relax, entertain or simply enjoy your own outdoor retreat. Elevated entry steps lead into an open-concept layout where luxury vinyl plank flooring carries throughout the main living areas for both style and easy maintenance. Gather in the living room where oversized windows welcome natural light while an electric fireplace adds warmth and ambiance for quiet evenings at home. Preparing meals feels effortless in the modern kitchen finished with quartz countertops, full-height cabinetry, stainless steel appliances, subway tile and a peninsula breakfast bar that encourages casual dining and conversation. Daily routines become more convenient with in-suite laundry tucked neatly away to maximize living space. Unwind in the spacious bedroom where dual closets help keep everything organized while offering generous storage. Fresh, timeless finishes continue into the 4-piece bathroom, creating a clean and polished space designed for everyday comfort. Assigned parking and nearby visitor parking make coming and going easy for both residents and guests alike. Beyond your front door, exclusive access to the Cranston Residents Association clubhouse adds exceptional lifestyle value with sports courts, a spray park, skating rink and year-round programming for all ages. Scenic walking paths along the Bow River invite outdoor recreation while nearby Fish Creek Park expands your options for hiking and cycling. Shopping, restaurants, South Health Campus and the world's largest YMCA are only minutes away in neighbouring Seton, placing everyday essentials close at hand. Quick connections to Deerfoot Trail and Stoney Trail simplify commuting in every direction, making this an outstanding opportunity for first-time buyers, downsizers or investors seeking modern living in one of southeast Calgary's most connected communities. More details
    Listed by eXp Realty
    DIANE RICHARDSON
  • 315 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2332682

    315 Cranford Walk SE Cranston Calgary T3M 1R7
    Main Photo: 315 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2332682
    $339,900
    Residential
    Status:
    Active
    MLS® Num:
    A2332682
    Bedrooms:
    2
    Bathrooms:
    1
    Floor Area:
    827 sq. ft.
    Welcome to this beautifully maintained 2-bedroom, 1-bathroom townhome offering 827 sq ft of thoughtfully designed living space in the family-friendly community of Cranston. Perfect for first-time buyers, down-sizers, or savvy investors, this quiet unit combines low-maintenance living with everyday convenience. Step outside to tasteful curb appeal featuring durable Hardie board exterior, irrigation and a private front-facing patio complete with a BBQ gas line — ideal for summer evenings. Nearby green space adds to the peaceful feel of this well-kept community. Inside, you're welcomed by a bright and spacious living area that flows into a modern white kitchen, finished with stone countertops that carry through into the bathroom — also equipped with full-size laundry for everyday ease. Two comfortable bedrooms round out the main living space, kept cool and comfortable year-round with central A/C. Downstairs, the partially developed basement offers some extra storage space, while the attached double tandem garage provides secure parking — a rare find at this price point. Location doesn't get more convenient than this: walking distance to schools, shopping, and restaurants, minutes to South Health Campus and the Seton YMCA with all of its amenities, and quick access to major roadways for an easy commute in and out of the city. Whether you're starting out, scaling down, or looking for a smart addition to your portfolio, this Cranston gem checks all the boxes. Book your showing today! More details
    Listed by Real Estate Professionals Inc.
    DIANE RICHARDSON
  • 128 Cranford Court SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343806

    128 Cranford Court SE Cranston Calgary T3M 0W3
    Main Photo: 128 Cranford Court SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343806
    $385,000
    Residential
    Status:
    Active
    MLS® Num:
    A2343806
    Bedrooms:
    3
    Bathrooms:
    3
    Floor Area:
    1,220 sq. ft.
    Modern, updated, and move-in ready! This bright and sunny 3-bedroom, 2.5-bathroom townhome features a double attached side-by-side garage and an impressive list of recent upgrades, including central A/C (2023), newer upstairs flooring (2024), fresh paint throughout, furnace (2024), hot water tank (2024), and a radon mitigation system (2023). The main floor showcases beautiful hardwood flooring throughout and a well-appointed kitchen featuring granite countertops, ample cabinetry, a pantry, and a convenient eat-up island. Step out onto the balcony just off the kitchen—perfect for enjoying your morning coffee or some fresh air. The spacious living and dining areas provide a comfortable setting for everyday living and entertaining; a convenient powder room completes the main level. Upstairs, the spacious primary bedroom offers a walk-in closet and a private 4-piece ensuite. Two additional bedrooms and a 4-piece main bathroom complete the upper level. The lower level offers a dedicated laundry area with plenty of storage and direct access to the double attached garage, providing both convenience and functionality. Ideally located just a block from the Cranston Community Centre and nearby shops and services. A short drive takes you to the extensive amenities of the Seton shopping district, South Health Campus, and the YMCA. With easy access to Deerfoot Trail and Stoney Trail, commuting and navigating the city is a breeze. A fantastic opportunity to own a beautifully maintained and thoughtfully updated home in a convenient Cranston location. Book your private viewing today! More details
    Listed by 2% Realty
    DIANE RICHARDSON
  • 38 Cranford Drive SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2324464

    38 Cranford Drive SE Cranston Calgary T3M 0V9
    Main Photo: 38 Cranford Drive SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2324464
    $399,000
    Residential
    Status:
    Active
    MLS® Num:
    A2324464
    Bedrooms:
    2
    Bathrooms:
    3
    Floor Area:
    1,484 sq. ft.
    DON'T MISS THIS ONE! Cranston Townhome in FABULOUS CONDITION, with a wider layout that truly feels more like a detached home. With ALL LEVELS FRESHLY PAINTED, professionally DEEP CLEANED, and fully move-in ready, it’s an ideal fit for families, roommates, or savvy investors. The street-level flex room offers endless versatility for a home office, gym, playroom, or media lounge, while the sunlit main floor showcases oversized windows, GENUINE HARDWOOD, and an open family/dining space. Sunny SOUTH-FACING BALCONY for warm summer evenings. The kitchen features a center island, stainless steel appliances, and a welcoming dining nook (or flex space for media or work area). The spacious living room easily accommodates larger furniture pieces. Upstairs, TWO PRIVATE PRIMARY SUITES each include a walk-in closet and a 4-piece ensuite, conveniently separated by an UPPER LAUNDRY room with a stackable washer and dryer. Increasingly rare is an actual SIDE-BY-SIDE DOUBLE GARAGE for extra storage room and long-term value. Cranston is a much-loved SE Calgary community, close to everything: schools, grocery stores, the Residents’ Association’s private tennis courts, splash park, and skating rink, plus South Health Campus, the YMCA, Cineplex, major shopping, and world-class pathways. Priced to move. Book your showing today. We can’t wait to show you around! More details
    Listed by Royal LePage Benchmark
    DIANE RICHARDSON
  • 409 Cranberry Park SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2341860

    409 Cranberry Park SE Cranston Calgary T3M 1R4
    OPEN HOUSE: Sep 20, 2026
    12:00 PM - 02:00 PM MDT
    Open House on Sunday, September 20, 2026 12:00PM - 2:00PM
    Main Photo: 409 Cranberry Park SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2341860
    $414,900
    Residential
    Status:
    Active
    MLS® Num:
    A2341860
    Bedrooms:
    3
    Bathrooms:
    3
    Floor Area:
    1,266 sq. ft.
    **Open House Sunday September 20th, 12-2pm** Welcome to 409 Cranberry Park SE, a bright and well-maintained 3-bedroom townhome in the desirable community of Cranston. Offering 1,200 sq. ft. of living space, a functional open layout and the added bonus of TWO titled parking stalls conveniently located right outside your door, this home has plenty to offer. The main floor features a spacious living room, generous dining area and open kitchen with granite countertops, a large island and stainless steel appliances. Large windows bring plenty of natural light into the home. Step outside to the rear deck, complete with a gas line for your BBQ and overlooking the green space and park behind the property, a great extension of your outdoor living space. Upstairs you'll find three bedrooms, including a spacious primary suite with large windows, a walk-in closet and a private 3-piece ensuite. Two additional bedrooms and a full bathroom complete the upper level. Central air conditioning, installed in 2022, keeps the home comfortable through Calgary's warmer months. The unfinished basement provides plenty of storage and offers excellent potential for future development, allowing you to add additional living space to suit your needs. Located in a well-managed complex and ideally situated close to schools, parks, playgrounds, shopping and everyday amenities, with convenient access to Deerfoot Trail and Stoney Trail. With TWO titled parking stalls, central A/C, green space right out back and a fantastic Cranston location, this home offers excellent value for first-time buyers, families or investors. More details
    Listed by RE/MAX Realty Professionals
    DIANE RICHARDSON
  • 413 Cranford Court in Calgary: Cranston Row/Townhouse for sale : MLS®# A2341171

    413 Cranford Court Cranston Calgary T3M 0W1
    Main Photo: 413 Cranford Court in Calgary: Cranston Row/Townhouse for sale : MLS®# A2341171
    $424,900
    Residential
    Status:
    Active
    MLS® Num:
    A2341171
    Bedrooms:
    3
    Bathrooms:
    3
    Floor Area:
    1,222 sq. ft.
    Welcome to Cranston, where comfort, style, and convenience come together in this beautifully designed three-bedroom townhouse with a double attached garage. Step inside and discover a bright, open-concept that flows seamlessly through the spacious living room, dining area, and into the modern kitchen. The kitchen is thoughtfully appointed with a large central island, quartz countertops, stainless steel appliances, abundant cabinetry and workspace, plus a convenient pantry. Adjacent to the kitchen, you'll find a cozy breakfast area, while a well-placed powder room completes the main level. Upstairs, the generous primary bedroom offers a walk-in closet and a private full ensuite. Two additional well-sized bedrooms and another full bathroom provide plenty of space for family members or guests. The lower level includes laundry facilities, mechanical space, ample storage, and direct access to the double attached garage. Ideally situated near the community center, schools, shopping, restaurants, pubs, and a wide range of amenities, this home offers exceptional value in a highly desirable neighborhood. Be sure to contact your preferred REALTOR® to arrange a private showing. This is a move you'll be happy you made! More details
    Listed by eXp Realty
    DIANE RICHARDSON
  • 612 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343996

    612 Cranford Walk SE Cranston Calgary T3M 1R8
    Main Photo: 612 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343996
    $425,000
    Residential
    Status:
    Active
    MLS® Num:
    A2343996
    Bedrooms:
    3
    Bathrooms:
    2
    Floor Area:
    1,450 sq. ft.
    3 BEDROOMS | 2 BATHROOMS | OVER 1400 SQFT LIVING SPACE | OPEN LAYOUT | DOUBLE ATTACHED GARAGE | Welcome to this bright and spacious home with 9 ft. ceilings and large windows in the community of Mosaic Cranston. As you enter the home, you will enjoy the spacious open concept living area with room to relax & entertain. The large kitchen features beautiful white cabinetry, granite island and countertops, fully tiled backsplash, plenty of cabinet and counter space, and a convenient breakfast bar. The living room features a gas fire place to cozy up and enjoy conversations around. Additionally, the connected open dining room connects to a large deck with bbq gas hookup and plenty of room to enjoy the outdoors. Unwind in the master retreat with 3-piece ensuite bathroom and WALK-IN CLOSET. This home includes two additional bedrooms, a 4 piece bathroom, laundry room and lower level FLEX ROOM ideal for an office. Additionally, this home includes CENTRAL AIR CONDITIONING, a double attached garage and lower front patio. Enjoy the convenient location of Mosaic Cranston, just steps away from shopping, schools, parks, playgrounds and walking paths. Don't miss out on this stunning sought after property! More details
    Listed by Real Broker
    DIANE RICHARDSON
  • 652 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2340673

    652 Cranford Walk SE Cranston Calgary T2M 3C6
    Main Photo: 652 Cranford Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2340673
    $427,000
    Residential
    Status:
    Active
    MLS® Num:
    A2340673
    Bedrooms:
    3
    Bathrooms:
    2
    Floor Area:
    1,324 sq. ft.
    ** OPEN HOUSE SUNDAY AUG 30 - 12PM-1:30PM ** This rare end-unit townhome in Cranston offers over 1,300 sq. ft. of bright, stylish living with no neighbours above and only one adjoining neighbour. Extra windows fill the home with natural light, creating an open and welcoming feel throughout. All three bedrooms are conveniently located on the same level, while the finished basement provides flexible space for a home office, gym, rec room, or additional storage. The home also features a double attached garage, central A/C, water softener, video doorbell, keyless entry, smart thermostat, and a new hot water tank installed in 2025. Step outside onto the oversized 175+ sq. ft. balcony and enjoy a peaceful setting with plenty of space to relax or entertain. The property is currently tenant-occupied, with the tenants scheduled to move out on October 16, making it an excellent opportunity for buyers looking for a well-maintained home in one of Cranston’s most desirable locations. Book your showing today! More details
    Listed by Gravity Realty Group
    DIANE RICHARDSON
  • 237 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2322161

    237 Cranbrook Square SE Cranston Calgary T3M 3K8
    Main Photo: 237 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2322161
    $430,000
    Residential
    Status:
    Active
    MLS® Num:
    A2322161
    Bedrooms:
    3
    Bathrooms:
    3
    Floor Area:
    1,953 sq. ft.
    MOTIVATED SELLER !!! 3 BEDROOMS | 2.5 BATHROOMS | END UNIT | 1,953 SQFT | ROOFTOP PATIO | FULLY FENCED YARD | SIDE GREEN SPACE Welcome to this stunning 3-storey end-unit townhome in the desirable community of Riverstone in Cranston. Offering 1,953 sq. ft. of thoughtfully designed living space, this home combines modern style, functionality, and an exceptional location beside green space. The bright open-concept main floor features durable laminate flooring, large windows, and a contemporary kitchen complete with quartz countertops, stainless steel appliances, a large island, and ample cabinet space. The dining area opens directly to the fully fenced backyard, featuring a BBQ pad and gas hookup—perfect for outdoor entertaining. A convenient 2-piece bathroom completes the main level. Upstairs, you'll find a spacious primary bedroom with a walk-in closet and private 4-piece ensuite, along with two additional bedrooms, another full bathroom, and upper-level laundry. The third floor offers a versatile family room, home office, or recreation space with access to a private rooftop patio—an ideal spot to relax and enjoy the views. Additional features include in-unit storage, an assigned parking stall, lawn maintenance included in the condo fees, and direct access to nearby pathways and green space. Conveniently located close to parks, schools, shopping, and all the amenities Cranston has to offer. A perfect opportunity for first-time buyers, young professionals, or growing families. Book your private showing today! More details
    Listed by RE/MAX Real Estate (Mountain View)
    DIANE RICHARDSON
  • 410 Cranbrook Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2316460

    410 Cranbrook Walk SE Cranston Calgary T3M 2V5
    Main Photo: 410 Cranbrook Walk SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2316460
    $440,000
    Residential
    Status:
    Active
    MLS® Num:
    A2316460
    Bedrooms:
    2
    Bathrooms:
    3
    Floor Area:
    1,097 sq. ft.
    Welcome to Riverstone in Cranston where nature, community, and modern living come together. Nestled in one of Calgary’s most picturesque and sought-after neighbourhoods, this beautifully maintained 2-storey townhome offers the perfect balance of peaceful surroundings and everyday convenience. Just steps from the Bow River, scenic pathways, parks, and playgrounds, Riverstone is a community designed for those who appreciate both outdoor living and urban accessibility. Offering nearly 1,100 SF of thoughtfully designed living space, this newer-built home welcomes you with a bright and contemporary interior. The open-concept main floor features wide plank luxury vinyl flooring throughout, creating a seamless and stylish flow perfect for both daily living and entertaining. The spacious living area connects effortlessly to the dining space and stunning kitchen, designed to impress with quartz countertops, a large central island with seating, subway tile backsplash, stainless steel appliances, chimney-style hood fan, pantry, pendant lighting, and soaring 9-foot ceilings that enhance the home’s open feel. A conveniently located 2-piece bathroom completes the main level. Upstairs, you’ll find a highly desirable layout featuring TWO generous primary bedrooms, each with its own private 4-piece ensuite, offering comfort and flexibility for guests, family, or shared living arrangements. Upper-floor laundry adds to the home’s practical design and everyday convenience. The lower level offers a double attached garage with plenty of room for parking, storage, and all your gear. Enjoy outdoor living on your private fenced concrete patio, the perfect space for morning coffee, summer evenings, or simply unwinding after a busy day. Located minutes from Deerfoot Trail and Stoney Trail, this exceptional home provides quick access to Seton amenities, including shopping, restaurants, entertainment, the South Health Campus, and the YMCA, while 130th Avenue shopping is also nearby. If you’ve been searching for a home that offers modern comfort surrounded by nature, Riverstone delivers. More details
    Listed by Century 21 Bravo Realty
    DIANE RICHARDSON
  • 428 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2337313

    428 Cranbrook Square SE Cranston Calgary T3M 3K9
    Main Photo: 428 Cranbrook Square SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2337313
    $440,000
    Residential
    Status:
    Active
    MLS® Num:
    A2337313
    Bedrooms:
    3
    Bathrooms:
    3
    Floor Area:
    1,950 sq. ft.
    Welcome to 428 Cranbrook Square! This bright and inviting corner stacked townhome offers a spacious, functional layout with plenty of room to make yourself at home. Large windows fill the space with natural light, while vinyl flooring runs throughout the main living areas. The modern kitchen features plenty of cabinetry, quartz countertops, a central island with seating and a pantry, and opens nicely to the dining and living rooms—perfect for everyday living and entertaining. The home offers three bedrooms, including a comfortable primary bedroom with its own private 4-piece ensuite, along with an additional full bathroom and convenient in-unit laundry. Head up to the third level where you’ll find a huge bonus room offering fantastic additional living space, plus access to a private balcony. Assigned parking is included, and the professionally managed complex is pet-friendly. Condo fees include common area maintenance, professional management, reserve fund contributions, snow removal and trash. Enjoy a great location close to walking and biking paths, parks, playgrounds and the river pathways, with easy access to shopping, schools and major routes. A welcoming home with a great layout in a location that makes it easy to enjoy everything Cranston has to offer! More details
    Listed by RE/MAX Realty Professionals
    DIANE RICHARDSON
  • 1226 Cranford Court SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343227

    1226 Cranford Court SE Cranston Calgary T3M 0W2
    Main Photo: 1226 Cranford Court SE in Calgary: Cranston Row/Townhouse for sale : MLS®# A2343227
    $444,900
    Residential
    Status:
    Active
    MLS® Num:
    A2343227
    Bedrooms:
    2
    Bathrooms:
    3
    Floor Area:
    1,331 sq. ft.
    Welcome to 1226 Cranford Court SE, a beautifully maintained 2-bedroom, 2.5-bathroom end-unit townhome in the sought-after Cranston. One of the home's best features is its unique sunken living room, offering the perfect combination of openness and separation. Vaulted ceilings and large, sun-filled windows create a bright and inviting space, while the half-level design provides added privacy for relaxing, watching TV, or enjoying family time. Up a half level, the spacious kitchen and dining area is designed for both everyday living and entertaining. The kitchen features an extended bank of cabinetry, raised breakfast bar, stainless steel appliances, and maple hardwood flooring, with a convenient 2-piece powder room completing the main level. Upstairs you'll find two generously sized primary bedrooms, each with its own private 4-piece ensuite, making this layout ideal for roommates, guests, or a home office setup. Stacked upper-level laundry adds another layer of everyday convenience. The lower level provides direct access to the double attached garage, along with additional storage space. As an end unit, the home benefits from additional privacy and natural light, while the Mosaic complex offers beautifully landscaped grounds and ample visitor parking. The location puts some of southeast Calgary's best amenities within easy reach, including the Brookfield Residential YMCA, South Health Campus, Cineplex VIP Cinemas, shopping, restaurants, schools, parks, pathways, and major transportation routes. Residents also enjoy access to the Cranston Residents Association, with amenities including a fitness centre, splash park, skating rink, skatepark, tennis courts, and additional recreational facilities for year-round enjoyment. More details
    Listed by RE/MAX First
    DIANE RICHARDSON
1-12/29
Data was last updated September 17, 2026 at 10:05 PM (UTC)

CRANSTON TOwnhomes for sale Calgary

EXPLORE TownHOMES FOR SALE IN CRANSTON CALGARY

Find Your Perfect Calgary Townhome with Diane Richardson - Contact Now for Expert Guidance

Looking for a trusted professional to assist you in finding your ideal Calgary townhome? Contact Diane Richardson, a reputable real estate agent dedicated to helping you find your dream home. Call Diane Richardson at 403-397-3706, email her at diane@mypadcalgary.com or simply use our Live Chat feature to start your journey towards homeownership today. Don't miss out on the opportunity to work with a knowledgeable expert who will guide you every step of the way. Get in touch with Diane Richardson now!

The Benefits of Townhome Living

Townhomes in Calgary provide a wonderful combination of comfort, convenience, and community. With their multi-level layouts and private entrances, townhomes offer the feeling of a detached home while often requiring less maintenance. Enjoy the freedom of owning your own space and yard without the extensive upkeep that comes with a standalone property. Additionally, many townhome communities feature shared amenities such as parks, playgrounds, and recreational facilities, fostering a sense of community and providing opportunities to meet your neighbors.

Discover the vibrant neighborhoods of Calgary

Calgary

City CentreCalgary

EastCalgary

NorthCalgary

North EastCalgary

North WestCalgary

SouthCalgary

South EastCalgary

WestCalgary

Data is supplied by Pillar 9™ MLS® System. Pillar 9™ is the owner of the copyright in its MLS®System. Data is deemed reliable but is not guaranteed accurate by Pillar 9™.
The trademarks MLS®, Multiple Listing Service® and the associated logos are owned by The Canadian Real Estate Association (CREA) and identify the quality of services provided by real estate professionals who are members of CREA. Used under license.