working crude version