almost there, may be ready for testing