public static <K,V> OrderedMap<K, V> decorate(Map<K, V> map) {
        return new ListOrderedMap<K, V>(map);
    }
Factory method to create an ordered map.
<p/>
An <code>ArrayList</code> is used to retain order.

@param map the map to decorate, must not be null
@throws IllegalArgumentException if map is null
jphp-runtime/src/php/runtime/common/collections/map/ListOrderedMap.java