simple implementation of #18