## Uses of Class
com.io7m.jregions.core.unparameterized.areas.AreaL

- Packages that use AreaL
  Package | Description
  --- | ---
  com.io7m.jregions.core.conversions | Functions to convert between parameterized and unparameterized types.
  com.io7m.jregions.core.unparameterized.areas | Area types.
  com.io7m.jregions.core.unparameterized.sizes | Area sizes.
  com.io7m.jregions.generators | Quickcheck generators.

- - ### Uses of AreaL in com.io7m.jregions.core.conversions

    Methods in com.io7m.jregions.core.conversions that return AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <S> AreaL` | AreaConversions.`toAreaL​(PAreaL<S> a)` | Convert an area.

    Methods in com.io7m.jregions.core.conversions with parameters of type AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <S> PAreaL<S>` | AreaConversions.`toPAreaL​(AreaL a)` | Convert an area.

  - ### Uses of AreaL in com.io7m.jregions.core.unparameterized.areas

    Methods in com.io7m.jregions.core.unparameterized.areas that return AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static AreaL` | AreasL.`alignCenter​(AreaL outer, AreaL inner)` | Align the area `inner` such that the center of the area is equal to the center of `outer`.
    `static AreaL` | AreasL.`alignHorizontallyCenter​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXCenter(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMaxX​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXMaxX(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMaxXOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnXMaxXOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignHorizontallyMinX​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXMinX(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMinXOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnXMinXOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignMaxYMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMaxYMaxXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMaxYMaxXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMaxYMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMaxYMinXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMaxYMinXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMinYMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMinYMaxXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMinYMaxXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMinYMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMinYMinXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMinYMinXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnXCenter​(AreaL outer, AreaL inner)` | Align the area `inner` along the X axis in the center of `outer`.
    `static AreaL` | AreasL.`alignOnXMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnXMaxXOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnXMaxXOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the X axis against the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnXMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnXMinXOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnXMinXOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the X axis against the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnYCenter​(AreaL outer, AreaL inner)` | Align the area `inner` along the Y axis in the center of `outer`.
    `static AreaL` | AreasL.`alignOnYMaxY​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnYMaxYOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnYMaxYOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the Y axis against the inside maximum-y edge of `outer`.
    `static AreaL` | AreasL.`alignOnYMinY​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnYMinYOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnYMinYOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the Y axis against the inside minimum-y edge of `outer`.
    `static AreaL` | AreasL.`alignVerticallyCenter​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYCenter(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMaxY​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYMaxY(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMaxYOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnYMaxYOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignVerticallyMinY​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYMinY(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMinYOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnYMinYOffset(AreaL, AreaL, long)`
    `AreaL` | AreaL.Builder.`build​()` | Builds a new `AreaL`.
    `static AreaL` | AreasL.`containing​(AreaL a, AreaL b)` | Construct a area that will contain both `a` and `b`.
    `static AreaL` | AreasL.`create​(long x, long y, long size_x, long size_y)` | Create an area of size `size_x` on the X axis and size `size_y` on the Y axis, placing the minimum corner at `(x, y)`.
    `static AreaL` | AreasL.`fitBetweenHorizontal​(AreaL fit, AreaL a, AreaL b)` | Deprecated. Use `AreasL.fitBetweenOnX(AreaL, AreaL, AreaL)`
    `static AreaL` | AreasL.`fitBetweenOnX​(AreaL fit, AreaL a, AreaL b)` | Attempt to fit `fit` between `a` and `b`, horizontally.
    `static AreaL` | AreasL.`fitBetweenOnY​(AreaL fit, AreaL a, AreaL b)` | Attempt to fit `fit` between `a` and `b`, vertically.
    `static AreaL` | AreasL.`fitBetweenVertical​(AreaL fit, AreaL a, AreaL b)` | Deprecated. Use `AreasL.fitBetweenOnY(AreaL, AreaL, AreaL)`
    `static AreaL` | AreasL.`hollowOut​(AreaL outer, long min_x_offset, long max_x_offset, long min_y_offset, long max_y_offset)` | Construct a new area that fits inside `outer` based on the given offsets from each edge.
    `static AreaL` | AreasL.`hollowOutEvenly​(AreaL outer, long offset)` | Equivalent to calling `AreasL.hollowOut(AreaL, long, long, long, long)` with `offset` for all offset parameters.
    `static AreaL` | AreasL.`moveAbsolute​(AreaL area, long x, long y)` | Move the given area to `(x, y)`.
    `static AreaL` | AreasL.`moveRelative​(AreaL area, long x, long y)` | Move the given area by `(x, y)`.
    `static AreaL` | AreasL.`moveToOrigin​(AreaL area)` | Move the given area to `(0, 0)`.
    `static AreaL` | AreaL.`of​(long minimumX, long maximumX, long minimumY, long maximumY)` | Construct a new immutable `AreaL` instance.
    `static AreaL` | AreasL.`scaleFromCenter​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMaxYMaxX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMaxYMinX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMinYMaxX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMinYMinX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`setSizeFromCenter​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMaxYMaxX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMaxYMinX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMinYMaxX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMinYMinX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.

    Methods in com.io7m.jregions.core.unparameterized.areas that return types with arguments of type AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static AreaXSplitL<AreaL>` | AreasL.`splitAlongParallelToX​(AreaL area, long y)` | Split `area` along a line parallel to the X axis placed at `y` units from its own minimum-y edge.
    `static AreaYSplitL<AreaL>` | AreasL.`splitAlongParallelToY​(AreaL area, long x)` | Split `area` along a line parallel to the Y axis placed at `x` units from its own minimum-x edge.
    `static AreaXYSplitL<AreaL>` | AreasL.`splitAlongXY​(AreaL area, long x, long y)` | Split `area` along a two axis-aligned perpendicular lines that intercept at `(x, y)`.

    Methods in com.io7m.jregions.core.unparameterized.areas with parameters of type AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static AreaL` | AreasL.`alignCenter​(AreaL outer, AreaL inner)` | Align the area `inner` such that the center of the area is equal to the center of `outer`.
    `static AreaL` | AreasL.`alignHorizontallyCenter​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXCenter(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMaxX​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXMaxX(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMaxXOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnXMaxXOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignHorizontallyMinX​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnXMinX(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignHorizontallyMinXOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnXMinXOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignMaxYMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMaxYMaxXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMaxYMaxXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMaxYMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMaxYMinXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMaxYMinXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the maximum-y edge is at least `offset_y` from the inside maximum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMinYMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMinYMaxXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMinYMaxXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the maximum-x edge is at least `offset_x` from the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignMinYMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignMinYMinXOffset(AreaL, AreaL, long, long)` with zero offsets.
    `static AreaL` | AreasL.`alignMinYMinXOffset​(AreaL outer, AreaL inner, long offset_x, long offset_y)` | Align the area `inner` such that the minimum-y edge is at least `offset_y` from the inside minimum-y edge of `outer` and the minimum-x edge is at least `offset_x` from the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnXCenter​(AreaL outer, AreaL inner)` | Align the area `inner` along the X axis in the center of `outer`.
    `static AreaL` | AreasL.`alignOnXMaxX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnXMaxXOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnXMaxXOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the X axis against the inside maximum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnXMinX​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnXMinXOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnXMinXOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the X axis against the inside minimum-x edge of `outer`.
    `static AreaL` | AreasL.`alignOnYCenter​(AreaL outer, AreaL inner)` | Align the area `inner` along the Y axis in the center of `outer`.
    `static AreaL` | AreasL.`alignOnYMaxY​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnYMaxYOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnYMaxYOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the Y axis against the inside maximum-y edge of `outer`.
    `static AreaL` | AreasL.`alignOnYMinY​(AreaL outer, AreaL inner)` | Equivalent to calling `AreasL.alignOnYMinYOffset(AreaL, AreaL, long)` with a zero offset.
    `static AreaL` | AreasL.`alignOnYMinYOffset​(AreaL outer, AreaL inner, long offset)` | Align the area `inner` along the Y axis against the inside minimum-y edge of `outer`.
    `static AreaL` | AreasL.`alignVerticallyCenter​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYCenter(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMaxY​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYMaxY(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMaxYOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnYMaxYOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`alignVerticallyMinY​(AreaL outer, AreaL inner)` | Deprecated. Use `AreasL.alignOnYMinY(AreaL, AreaL)`
    `static AreaL` | AreasL.`alignVerticallyMinYOffset​(AreaL outer, AreaL inner, long offset)` | Deprecated. Use `AreasL.alignOnYMinYOffset(AreaL, AreaL, long)`
    `static AreaL` | AreasL.`containing​(AreaL a, AreaL b)` | Construct a area that will contain both `a` and `b`.
    `static boolean` | AreasL.`contains​(AreaL a, AreaL b)` | Determine whether or not one area contains another.
    `static boolean` | AreasL.`containsPoint​(AreaL a, long x, long y)` | Determine whether or not a area contains a given point.
    `static boolean` | AreasL.`couldFitInside​(AreaL a, AreaL b)` | Determine whether or not one area could fit inside another.
    `static AreaL` | AreasL.`fitBetweenHorizontal​(AreaL fit, AreaL a, AreaL b)` | Deprecated. Use `AreasL.fitBetweenOnX(AreaL, AreaL, AreaL)`
    `static AreaL` | AreasL.`fitBetweenOnX​(AreaL fit, AreaL a, AreaL b)` | Attempt to fit `fit` between `a` and `b`, horizontally.
    `static AreaL` | AreasL.`fitBetweenOnY​(AreaL fit, AreaL a, AreaL b)` | Attempt to fit `fit` between `a` and `b`, vertically.
    `static AreaL` | AreasL.`fitBetweenVertical​(AreaL fit, AreaL a, AreaL b)` | Deprecated. Use `AreasL.fitBetweenOnY(AreaL, AreaL, AreaL)`
    `static AreaL` | AreasL.`hollowOut​(AreaL outer, long min_x_offset, long max_x_offset, long min_y_offset, long max_y_offset)` | Construct a new area that fits inside `outer` based on the given offsets from each edge.
    `static AreaL` | AreasL.`hollowOutEvenly​(AreaL outer, long offset)` | Equivalent to calling `AreasL.hollowOut(AreaL, long, long, long, long)` with `offset` for all offset parameters.
    `static AreaL` | AreasL.`moveAbsolute​(AreaL area, long x, long y)` | Move the given area to `(x, y)`.
    `static AreaL` | AreasL.`moveRelative​(AreaL area, long x, long y)` | Move the given area by `(x, y)`.
    `static AreaL` | AreasL.`moveToOrigin​(AreaL area)` | Move the given area to `(0, 0)`.
    `static boolean` | AreasL.`overlaps​(AreaL a, AreaL b)` | Determine whether or not two areas overlap.
    `static AreaL` | AreasL.`scaleFromCenter​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMaxYMaxX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMaxYMinX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMinYMaxX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`scaleFromMinYMinX​(AreaL area, long x_diff, long y_diff)` | Scale `area` by adding `x_diff` to the sizeX, and `y_diff` to the sizeY.
    `static AreaL` | AreasL.`setSizeFromCenter​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMaxYMaxX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMaxYMinX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMinYMaxX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static AreaL` | AreasL.`setSizeFromMinYMinX​(AreaL area, long sizeX, long sizeY)` | Set the sizeX and sizeY of `area` to `sizeX` and `sizeY`, respectively.
    `static java.lang.String` | AreasL.`show​(AreaL area)` |
    `static java.lang.String` | AreasL.`showToBuilder​(AreaL area, java.lang.StringBuilder sb)` |
    `static AreaSizeL` | AreasL.`size​(AreaL area)` |
    `static AreaXSplitL<AreaL>` | AreasL.`splitAlongParallelToX​(AreaL area, long y)` | Split `area` along a line parallel to the X axis placed at `y` units from its own minimum-y edge.
    `static AreaYSplitL<AreaL>` | AreasL.`splitAlongParallelToY​(AreaL area, long x)` | Split `area` along a line parallel to the Y axis placed at `x` units from its own minimum-x edge.
    `static AreaXYSplitL<AreaL>` | AreasL.`splitAlongXY​(AreaL area, long x, long y)` | Split `area` along a two axis-aligned perpendicular lines that intercept at `(x, y)`.

  - ### Uses of AreaL in com.io7m.jregions.core.unparameterized.sizes

    Methods in com.io7m.jregions.core.unparameterized.sizes that return AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `static AreaL` | AreaSizesL.`area​(AreaSizeL size)` | Construct an area at the origin that has the same size as `size`.

  - ### Uses of AreaL in com.io7m.jregions.generators

    Methods in com.io7m.jregions.generators that return AreaL
    Modifier and Type | Method | Description
    --- | --- | ---
    `AreaL` | AreaLGenerator.`next​()` |

Copyright © 2017 <code@io7m.com> http://io7m.com