APIs may not reference API implementations API ${from} should use a collections interface instead of ${to} ${from} may not reference ${to}, which is another impl, unless it extends it Util class ${from} may not reference API impl ${to}