class Padding extends AbstractCssProperty<Padding> implements StateChangeInformer<CssProperty> {

    public static boolean isValid(final String cssValue) {
        final String trimmedCssValue;
        if (cssValue == null || (trimmedCssValue = TagStringUtil
                .toLowerCase(StringUtil.strip(cssValue))).isEmpty()) {
            return false;
        }
        if (INITIAL.equalsIgnoreCase(trimmedCssValue)
                || INHERIT.equalsIgnoreCase(trimmedCssValue)) {
            return true;
        }

        final String[] cssValueParts = StringUtil.splitBySpace(trimmedCssValue);

        for (final String eachPart : cssValueParts) {
            final boolean valid = PaddingTop.isValid(eachPart);
            if ((valid
                    && (INITIAL.equals(eachPart) || INHERIT.equals(eachPart)))
                    || !valid) {
                return false;
            }
        }

        return true;
    }

    public  Padding();
    public  Padding(final String cssValue);
    public  Padding(final Padding paddingBottom);

}