pure added as static