class IntMutableCollection(private val mc: MutableCollection) : MutableCollection { override val size: Int get() = mc.size override fun contains(element: Int): Boolean = mc.contains(element) override fun containsAll(elements: Collection): Boolean = mc.containsAll(elements) override fun isEmpty(): Boolean = mc.isEmpty() override fun add(element: Int): Boolean = mc.add(element) override fun addAll(elements: Collection): Boolean = mc.addAll(elements) override fun clear() { mc.clear() } override fun iterator(): MutableIterator = mc.iterator() override fun remove(element: Int): Boolean = mc.remove(element) override fun removeAll(elements: Collection): Boolean = mc.removeAll(elements) override fun retainAll(elements: Collection): Boolean = mc.retainAll(elements) } class LongMutableCollection(private val mc: MutableCollection) : MutableCollection { override val size: Int get() = mc.size override fun contains(element: Long): Boolean = mc.contains(element) override fun containsAll(elements: Collection): Boolean = mc.containsAll(elements) override fun isEmpty(): Boolean = mc.isEmpty() override fun add(element: Long): Boolean = mc.add(element) override fun addAll(elements: Collection): Boolean = mc.addAll(elements) override fun clear() { mc.clear() } override fun iterator(): MutableIterator = mc.iterator() override fun remove(element: Long): Boolean = mc.remove(element) override fun removeAll(elements: Collection): Boolean = mc.removeAll(elements) override fun retainAll(elements: Collection): Boolean = mc.retainAll(elements) }