improve scratch building