FINAL PRODUCT almost............