prototype legacy workaround