{"id":51683,"date":"2026-09-11T16:38:44","date_gmt":"2026-09-11T14:38:44","guid":{"rendered":"https:\/\/www.recharge.com\/blog\/fc-27-player-stats"},"modified":"2026-09-11T16:49:35","modified_gmt":"2026-09-11T14:49:35","slug":"fc-27-player-stats","status":"publish","type":"post","link":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats","title":{"rendered":"FC 27 Player Stats: Search Any of 20,689 Players"},"content":{"rendered":"\n<p>Search any player in <strong>EA SPORTS FC 27<\/strong> below. All <strong>20,689 players<\/strong> are here \u2014 men\u2019s and women\u2019s football, every league EA includes \u2014 with their overall rating, position, the six face stats, skill moves, weak foot and preferred foot.<\/p>\n\n\n\n<p>Each player gets a shareable link, so you can send someone straight to a card rather than telling them what to search for.<\/p>\n\n\n\n<div class=\"rcw-fc rcw-pp\" id=\"rcw-pp\">\n<script>eval(new TextDecoder().decode(Uint8Array.from(atob(\"ZXZhbChuZXcgVGV4dERlY29kZXIoKS5kZWNvZGUoVWludDhBcnJheS5mcm9tKGF0b2IoIktHWjFibU4wYVc5dUtDbDdkbUZ5SUhNOVpHOWpkVzFsYm5RdVkzSmxZWFJsUld4bGJXVnVkQ2dpYzNSNWJHVWlLVHR6TG5SbGVIUkRiMjUwWlc1MFBTSmNiaTV5WTNjdGNIQjdabTl1ZEMxbVlXMXBiSGs2WENKQmRtVnVhWElnVG1WNGRGd2lMRVoxZEhWeVlTeGNJbE5sWjI5bElGVkpYQ0lzYzNsemRHVnRMWFZwTEhOaGJuTXRjMlZ5YVdZN1ltRmphMmR5YjNWdVpEb2pSalJHTmtZMk8ySnZjbVJsY2pveGNIZ2djMjlzYVdRZ0kwVXpSVGhGT0R0aWIzSmtaWEl0Y21Ga2FYVnpPakUyY0hnN2NHRmtaR2x1WnpveU1IQjRPMk52Ykc5eU9pTXdSREkwTWpZN2JHbHVaUzFvWldsbmFIUTZNUzQwTlR0dFlYZ3RkMmxrZEdnNk1UQXdKWDFjYmk1eVkzY3RjSEFnS2l3dWNtTjNMWEJ3SUNvNk9tSmxabTl5WlN3dWNtTjNMWEJ3SUNvNk9tRm1kR1Z5ZTJKdmVDMXphWHBwYm1jNlltOXlaR1Z5TFdKdmVIMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMTBhWFJzWlh0dFlYSm5hVzQ2TUR0amIyeHZjam9qTURBek56TkVPMlp2Ym5RdGMybDZaVG95TVhCNE8yWnZiblF0ZDJWcFoyaDBPamd3TUR0c1pYUjBaWEl0YzNCaFkybHVaem90TGpBeFpXMTlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRjM1ZpZTIxaGNtZHBiam8wY0hnZ01DQXhObkI0TzJOdmJHOXlPaU0zTXpoQk9FTTdabTl1ZEMxemFYcGxPakV6TGpWd2VIMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMWpZWEprZTJKaFkydG5jbTkxYm1RNkkyWm1aanRpYjNKa1pYSTZNWEI0SUhOdmJHbGtJQ05GTTBVNFJUZzdZbTl5WkdWeUxYSmhaR2wxY3pveE5IQjRPM0JoWkdScGJtYzZNVFp3ZUR0dFlYSm5hVzR0WW05MGRHOXRPakUwY0hoOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdGEybGphMlZ5ZTIxaGNtZHBiam93SURBZ01UQndlRHRtYjI1MExYTnBlbVU2TVRGd2VEdG1iMjUwTFhkbGFXZG9kRG8zTURBN2JHVjBkR1Z5TFhOd1lXTnBibWM2TGpGbGJUdDBaWGgwTFhSeVlXNXpabTl5YlRwMWNIQmxjbU5oYzJVN1kyOXNiM0k2SXpjek9FRTRRMzFjYmx4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFhObFlYSmphSEp2ZDN0a2FYTndiR0Y1T21ac1pYZzdaMkZ3T2pFd2NIZzdabXhsZUMxM2NtRndPbmR5WVhBN1lXeHBaMjR0YVhSbGJYTTZabXhsZUMxbGJtUjlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRabWxsYkdSN1pteGxlRG94SURFZ01qUXdjSGc3YldsdUxYZHBaSFJvT2pCOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdGJHRmllMlJwYzNCc1lYazZZbXh2WTJzN2JXRnlaMmx1T2pBZ01DQTJjSGc3Wm05dWRDMXphWHBsT2pFemNIZzdabTl1ZEMxM1pXbG5hSFE2TnpBd08yTnZiRzl5T2lNd01ETTNNMFI5WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0YVc1N2QybGtkR2c2TVRBd0pUdG1iMjUwTFdaaGJXbHNlVHBwYm1obGNtbDBPMlp2Ym5RdGMybDZaVG94TlhCNE8yWnZiblF0ZDJWcFoyaDBPall3TUR0amIyeHZjam9qTUVReU5ESTJPMkpoWTJ0bmNtOTFibVE2STBZMFJqWkdOanRpYjNKa1pYSTZNbkI0SUhOdmJHbGtJQ05GTTBVNFJUZzdZbTl5WkdWeUxYSmhaR2wxY3pveE1uQjRPM0JoWkdScGJtYzZNVE53ZUgxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxcGJqcG1iMk4xYzN0dmRYUnNhVzVsT2pBN1ltOXlaR1Z5TFdOdmJHOXlPaU13TUVVd056QjlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRjMlZzZDNKaGNIdHdiM05wZEdsdmJqcHlaV3hoZEdsMlpUdG1iR1Y0T2pBZ01TQXhPVEJ3ZUR0dGFXNHRkMmxrZEdnNk1IMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMXpaV3g3ZDJsa2RHZzZNVEF3SlR0aGNIQmxZWEpoYm1ObE9tNXZibVU3TFhkbFltdHBkQzFoY0hCbFlYSmhibU5sT201dmJtVTdMVzF2ZWkxaGNIQmxZWEpoYm1ObE9tNXZibVU3Wm05dWRDMW1ZVzFwYkhrNmFXNW9aWEpwZER0bWIyNTBMWE5wZW1VNk1UVndlRHRtYjI1MExYZGxhV2RvZERvMk1EQTdZMjlzYjNJNkl6QkVNalF5Tmp0aVlXTnJaM0p2ZFc1a09pTkdORVkyUmpZN1ltOXlaR1Z5T2pKd2VDQnpiMnhwWkNBalJUTkZPRVU0TzJKdmNtUmxjaTF5WVdScGRYTTZNVEp3ZUR0d1lXUmthVzVuT2pFemNIZ2dNemh3ZUNBeE0zQjRJREV6Y0hnN1kzVnljMjl5T25CdmFXNTBaWEo5WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0YzJWc09tWnZZM1Z6ZTI5MWRHeHBibVU2TUR0aWIzSmtaWEl0WTI5c2IzSTZJekF3UlRBM01IMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMXpaV3gzY21Gd09qcGhablJsY250amIyNTBaVzUwT2x3aVhDSTdjRzl6YVhScGIyNDZZV0p6YjJ4MWRHVTdjbWxuYUhRNk1UVndlRHQwYjNBNlkyRnNZeWcxTUNVZ0t5QXhNbkI0S1R0dFlYSm5hVzR0ZEc5d09pMHpjSGc3WW05eVpHVnlPalp3ZUNCemIyeHBaQ0IwY21GdWMzQmhjbVZ1ZER0aWIzSmtaWEl0ZEc5d09qZHdlQ0J6YjJ4cFpDQWpNREF6TnpORU8zQnZhVzUwWlhJdFpYWmxiblJ6T201dmJtVjlYRzVjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzFvYVhSemUyMWhjbWRwYmpveE1uQjRJREFnTUR0d1lXUmthVzVuT2pBN2JHbHpkQzF6ZEhsc1pUcHViMjVsTzJKdmNtUmxjam94Y0hnZ2MyOXNhV1FnSTBVelJUaEZPRHRpYjNKa1pYSXRjbUZrYVhWek9qRXljSGc3YjNabGNtWnNiM2M2YUdsa1pHVnVmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMV2hwZEhNZ2JHbDdZbTl5WkdWeUxXSnZkSFJ2YlRveGNIZ2djMjlzYVdRZ0kwVXpSVGhGT0gxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0Mxb2FYUnpJR3hwT214aGMzUXRZMmhwYkdSN1ltOXlaR1Z5TFdKdmRIUnZiVG93ZlZ4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdocGRIdGthWE53YkdGNU9tWnNaWGc3ZDJsa2RHZzZNVEF3SlR0bllYQTZNVEJ3ZUR0aGJHbG5iaTFwZEdWdGN6cGpaVzUwWlhJN2RHVjRkQzFoYkdsbmJqcHNaV1owTzJKaFkydG5jbTkxYm1RNkkyWm1aanRpYjNKa1pYSTZNRHRtYjI1MExXWmhiV2xzZVRwcGJtaGxjbWwwTzJadmJuUXRjMmw2WlRveE5IQjRPMk52Ykc5eU9pTXdSREkwTWpZN2NHRmtaR2x1WnpveE1YQjRJREV6Y0hnN1kzVnljMjl5T25CdmFXNTBaWEo5WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0YUdsME9taHZkbVZ5ZTJKaFkydG5jbTkxYm1RNkkwWTBSalpHTm4xY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0Mxb2FYUXRiM3RtYkdWNE9qQWdNQ0JoZFhSdk8yMXBiaTEzYVdSMGFEb3pOSEI0TzNSbGVIUXRZV3hwWjI0NlkyVnVkR1Z5TzJadmJuUXRkMlZwWjJoME9qZ3dNRHRqYjJ4dmNqb2pNREF6TnpORU8ySmhZMnRuY205MWJtUTZJMFZCUmtKR01qdGliM0prWlhJNk1YQjRJSE52Ykdsa0lDTkNOa1U1UTBVN1ltOXlaR1Z5TFhKaFpHbDFjem80Y0hnN2NHRmtaR2x1WnpvemNIZ2dObkI0TzJadmJuUXRjMmw2WlRveE0zQjRmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMV2hwZEMxdWUyWnZiblF0ZDJWcFoyaDBPamN3TUR0amIyeHZjam9qTURBek56TkVmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMV2hwZEMxdGUyTnZiRzl5T2lNM016aEJPRU03Wm05dWRDMXphWHBsT2pFeUxqVndlSDFjYmx4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdobGNtOTdZbTl5WkdWeUxYSmhaR2wxY3pveE5uQjRPMjkyWlhKbWJHOTNPbWhwWkdSbGJqdGliM0prWlhJNk1YQjRJSE52Ykdsa0lDTkZNMFU0UlRnN1ltRmphMmR5YjNWdVpEb2pabVptTzIxaGNtZHBiaTFpYjNSMGIyMDZNVFJ3ZUgxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0Mxb2FHVmhaSHRpWVdOclozSnZkVzVrT2lNd01ETTNNMFE3WTI5c2IzSTZJMlptWmp0d1lXUmthVzVuT2pFNGNIZ2dNakJ3ZUR0a2FYTndiR0Y1T21ac1pYZzdaMkZ3T2pFMmNIZzdZV3hwWjI0dGFYUmxiWE02WTJWdWRHVnlPMlpzWlhndGQzSmhjRHAzY21Gd2ZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXOTJjbnRtYkdWNE9qQWdNQ0JoZFhSdk8ySmhZMnRuY205MWJtUTZJekF3UlRBM01EdGpiMnh2Y2pvak1EQXpOek5FTzJKdmNtUmxjaTF5WVdScGRYTTZNVFJ3ZUR0dGFXNHRkMmxrZEdnNk56UndlRHQwWlhoMExXRnNhV2R1T21ObGJuUmxjanR3WVdSa2FXNW5Pamx3ZUNBeE1uQjRmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMVzkyY2lCaWUyUnBjM0JzWVhrNllteHZZMnM3Wm05dWRDMXphWHBsT2pNeGNIZzdabTl1ZEMxM1pXbG5hSFE2T0RBd08yeHBibVV0YUdWcFoyaDBPakY5WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0YjNaeUlITndZVzU3WkdsemNHeGhlVHBpYkc5amF6dG1iMjUwTFhOcGVtVTZNVEJ3ZUR0bWIyNTBMWGRsYVdkb2REbzRNREE3YkdWMGRHVnlMWE53WVdOcGJtYzZMakZsYlR0MFpYaDBMWFJ5WVc1elptOXliVHAxY0hCbGNtTmhjMlU3YldGeVoybHVMWFJ2Y0RvemNIaDlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRhRzVoYldWN1pteGxlRG94SURFZ01UZ3djSGc3YldsdUxYZHBaSFJvT2pCOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdGFHNTdiV0Z5WjJsdU9qQTdabTl1ZEMxemFYcGxPakl6Y0hnN1ptOXVkQzEzWldsbmFIUTZPREF3TzJ4bGRIUmxjaTF6Y0dGamFXNW5PaTB1TURGbGJUdHNhVzVsTFdobGFXZG9kRG94TGpFMU8yTnZiRzl5T2lOR01rWkNSamNoYVcxd2IzSjBZVzUwZlZ4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdodGUyMWhjbWRwYmpvMWNIZ2dNQ0F3TzJadmJuUXRjMmw2WlRveE15NDFjSGc3WTI5c2IzSTZJemxHUkRsRE5uMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMTBZV2R6ZTIxaGNtZHBiam81Y0hnZ01DQXdPMlJwYzNCc1lYazZabXhsZUR0bllYQTZObkI0TzJac1pYZ3RkM0poY0RwM2NtRndmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMWFJoWjN0bWIyNTBMWE5wZW1VNk1URndlRHRtYjI1MExYZGxhV2RvZERvNE1EQTdiR1YwZEdWeUxYTndZV05wYm1jNkxqQTJaVzA3ZEdWNGRDMTBjbUZ1YzJadmNtMDZkWEJ3WlhKallYTmxPMkpoWTJ0bmNtOTFibVE2SXpCRE5FRTFNRHRqYjJ4dmNqb2pOMFpGT1VJME8ySnZjbVJsY2kxeVlXUnBkWE02T1RrNWNIZzdjR0ZrWkdsdVp6bzBjSGdnT1hCNGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xYUmhaeTFoYkhSN1ltRmphMmR5YjNWdVpEb2pNRU0wUVRVd08yTnZiRzl5T2lORFJrVTVSVU45WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0YUdKdlpIbDdjR0ZrWkdsdVp6b3hPSEI0SURJd2NIaDlYRzVjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzFtWVdOMGMzdGthWE53YkdGNU9tWnNaWGc3WjJGd09qRXljSGc3Wm14bGVDMTNjbUZ3T25keVlYQTdiV0Z5WjJsdU9qQWdNQ0F4Tm5CNE8zQmhaR1JwYm1jNk1EdHNhWE4wTFhOMGVXeGxPbTV2Ym1WOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdFptRmpkSE1nYkdsN1pteGxlRG94SURFZ01UQTRjSGc3YldsdUxYZHBaSFJvT2pBN1ltRmphMmR5YjNWdVpEb2pSamRHUVVaQk8ySnZjbVJsY2pveGNIZ2djMjlzYVdRZ0kwVXpSVGhGT0R0aWIzSmtaWEl0Y21Ga2FYVnpPakV5Y0hnN2NHRmtaR2x1WnpveE1YQjRJREV6Y0hoOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdFptdDdaR2x6Y0d4aGVUcGliRzlqYXp0bWIyNTBMWE5wZW1VNk1UQXVOWEI0TzJadmJuUXRkMlZwWjJoME9qZ3dNRHRzWlhSMFpYSXRjM0JoWTJsdVp6b3VNRGxsYlR0MFpYaDBMWFJ5WVc1elptOXliVHAxY0hCbGNtTmhjMlU3WTI5c2IzSTZJemN6T0VFNFF6dHRZWEpuYVc0dFltOTBkRzl0T2pSd2VIMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMW1kbnRrYVhOd2JHRjVPbUpzYjJOck8yWnZiblF0YzJsNlpUb3hOWEI0TzJadmJuUXRkMlZwWjJoME9qY3dNRHRqYjJ4dmNqb2pNREF6TnpORU8yeHBibVV0YUdWcFoyaDBPakV1TWpVN2IzWmxjbVpzYjNjdGQzSmhjRHBoYm5sM2FHVnlaWDFjYmx4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdnMGUyMWhjbWRwYmpvd0lEQWdNVEJ3ZUR0bWIyNTBMWE5wZW1VNk1UTndlRHRtYjI1MExYZGxhV2RvZERvNE1EQTdZMjlzYjNJNkl6QXdNemN6UkgxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxemRHRjBjM3R0WVhKbmFXNDZNQ0F3SURSd2VEdHdZV1JrYVc1bk9qQTdiR2x6ZEMxemRIbHNaVHB1YjI1bGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xYTjBZWFI3YldGeVoybHVMV0p2ZEhSdmJUb3hNWEI0ZlZ4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFhOMFlYUTZiR0Z6ZEMxamFHbHNaSHR0WVhKbmFXNHRZbTkwZEc5dE9qQjlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRjM0p2ZDN0a2FYTndiR0Y1T21ac1pYZzdhblZ6ZEdsbWVTMWpiMjUwWlc1ME9uTndZV05sTFdKbGRIZGxaVzQ3WVd4cFoyNHRhWFJsYlhNNlltRnpaV3hwYm1VN1oyRndPakV3Y0hnN2JXRnlaMmx1TFdKdmRIUnZiVG8xY0hoOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdGMyNTdabTl1ZEMxemFYcGxPakV5TGpWd2VEdG1iMjUwTFhkbGFXZG9kRG8zTURBN1kyOXNiM0k2SXpORU5UUTFObjFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF6ZG50bWIyNTBMWE5wZW1VNk1UUndlRHRtYjI1MExYZGxhV2RvZERvNE1EQTdZMjlzYjNJNkl6QXdNemN6UkgxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxaVlYSjdhR1ZwWjJoME9qbHdlRHRpYjNKa1pYSXRjbUZrYVhWek9qazVPWEI0TzJKaFkydG5jbTkxYm1RNkkwVXpSVGhGT0R0dmRtVnlabXh2ZHpwb2FXUmtaVzU5WEc0dWNtTjNMWEJ3SUM1eVkzY3RjSEF0Wm1sc2JIdGthWE53YkdGNU9tSnNiMk5yTzJobGFXZG9kRG94TURBbE8ySnZjbVJsY2kxeVlXUnBkWE02T1RrNWNIZzdZbUZqYTJkeWIzVnVaRG9qTURCRk1EY3dmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMV1pwYkd3dGJXbGtlMkpoWTJ0bmNtOTFibVE2STBZeVF6azBRMzFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzFtYVd4c0xXeHZkM3RpWVdOclozSnZkVzVrT2lORk9EaENOa0Y5WEc1Y2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxamRIaDdZbUZqYTJkeWIzVnVaRG9qUlVaR09FWkRPMkp2Y21SbGNqb3hjSGdnYzI5c2FXUWdJME0yUlRSR01EdGliM0prWlhJdGNtRmthWFZ6T2pFeWNIZzdjR0ZrWkdsdVp6b3hNM0I0TzIxaGNtZHBiam93SURBZ01UUndlRHRtYjI1MExYTnBlbVU2TVROd2VEdGpiMnh2Y2pvak1USTFOVFptZlZ4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdOMGVDQndlMjFoY21kcGJqb3dJREFnTlhCNGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXTjBlQ0J3T214aGMzUXRZMmhwYkdSN2JXRnlaMmx1TFdKdmRIUnZiVG93ZlZ4dUxuSmpkeTF3Y0NBdWNtTjNMWEJ3TFdOMGVDQmllMk52Ykc5eU9pTXdSalF5TlRaOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdGJXOTJaWHRrYVhOd2JHRjVPbVpzWlhnN1oyRndPamx3ZUR0aGJHbG5iaTFwZEdWdGN6cG1iR1Y0TFhOMFlYSjBPMjFoY21kcGJqb3dJREFnTVRSd2VEdG1iMjUwTFhOcGVtVTZNVE11TlhCNE8ySnZjbVJsY2kxeVlXUnBkWE02TVRCd2VEdHdZV1JrYVc1bk9qRXhjSGdnTVROd2VIMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMXRiM1psTFhWd2UyTnZiRzl5T2lNd01EWXhNME03WW1GamEyZHliM1Z1WkRvalJVRkdRa1l5TzJKdmNtUmxjam94Y0hnZ2MyOXNhV1FnSTBJMlJUbERSWDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF0YjNabExXUnZkMjU3WTI5c2IzSTZJemhoTTJJeE1qdGlZV05yWjNKdmRXNWtPaU5HUmtZelJUUTdZbTl5WkdWeU9qRndlQ0J6YjJ4cFpDQWpSak5FT1VGRGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXMXZkbVV0Ym1WM2UyTnZiRzl5T2lNeE1qVTFObVk3WW1GamEyZHliM1Z1WkRvalJVWkdPRVpETzJKdmNtUmxjam94Y0hnZ2MyOXNhV1FnSTBNMlJUUkdNSDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF0YjNabElHSjdabTl1ZEMxM1pXbG5hSFE2T0RBd2ZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXUmxiSFJoZTJac1pYZzZNQ0F3SUdGMWRHODdabTl1ZEMxM1pXbG5hSFE2T0RBd08yWnZiblF0YzJsNlpUb3hOWEI0ZlZ4dVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdFkyaHBjSE43WkdsemNHeGhlVHBtYkdWNE8yZGhjRG80Y0hnN1pteGxlQzEzY21Gd09uZHlZWEE3YldGeVoybHVPakE3Y0dGa1pHbHVaem93TzJ4cGMzUXRjM1I1YkdVNmJtOXVaWDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzFqYUdsd2UyUnBjM0JzWVhrNlpteGxlRHRuWVhBNk4zQjRPMkZzYVdkdUxXbDBaVzF6T21ObGJuUmxjanRpWVdOclozSnZkVzVrT2lObVptWTdZbTl5WkdWeU9qRndlQ0J6YjJ4cFpDQWpSVE5GT0VVNE8ySnZjbVJsY2kxeVlXUnBkWE02T1RrNWNIZzdjR0ZrWkdsdVp6bzRjSGdnTVRSd2VDQTRjSGdnT1hCNE8yWnZiblF0Wm1GdGFXeDVPbWx1YUdWeWFYUTdabTl1ZEMxemFYcGxPakV6TGpWd2VEdGpiMnh2Y2pvak1EQXpOek5FTzJOMWNuTnZjanB3YjJsdWRHVnlPM1JsZUhRdFlXeHBaMjQ2YkdWbWRIMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMWphR2x3T21odmRtVnllMkp2Y21SbGNpMWpiMnh2Y2pvak1EQkZNRGN3TzJKaFkydG5jbTkxYm1RNkkwWTNSa1pHUW4xY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxamFHbHdMVzk3Wm05dWRDMTNaV2xuYUhRNk9EQXdPMkpoWTJ0bmNtOTFibVE2STBWQlJrSkdNanRpYjNKa1pYSTZNWEI0SUhOdmJHbGtJQ05DTmtVNVEwVTdZbTl5WkdWeUxYSmhaR2wxY3pvNU9UbHdlRHR3WVdSa2FXNW5Pakp3ZUNBM2NIZzdabTl1ZEMxemFYcGxPakV5Y0hoOVhHNHVjbU4zTFhCd0lDNXlZM2N0Y0hBdFkyaHBjQzF1ZTJadmJuUXRkMlZwWjJoME9qWXdNRHR2ZG1WeVpteHZkeTEzY21Gd09tRnVlWGRvWlhKbGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXTm9hWEF0Y0h0amIyeHZjam9qTnpNNFFUaERPMlp2Ym5RdGMybDZaVG94TVM0MWNIZzdabTl1ZEMxM1pXbG5hSFE2TnpBd2ZWeHVYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRibTkwWlh0bWIyNTBMWE5wZW1VNk1UTndlRHRqYjJ4dmNqb2pNMFExTkRVMk8ySmhZMnRuY205MWJtUTZJMFkzUmtGR1FUdGliM0prWlhJdGNtRmthWFZ6T2pFd2NIZzdjR0ZrWkdsdVp6b3hNWEI0SURFemNIZzdiV0Z5WjJsdU9qQWdNQ0F4TW5CNGZWeHVMbkpqZHkxd2NDQXVjbU4zTFhCd0xXNXZkR1VnWW50amIyeHZjam9qTURBek56TkVmVnh1TG5KamR5MXdjQ0F1Y21OM0xYQndMWGRoY201N1pHbHpjR3hoZVRwbWJHVjRPMmRoY0RvNWNIZzdZV3hwWjI0dGFYUmxiWE02Wm14bGVDMXpkR0Z5ZER0bWIyNTBMWE5wZW1VNk1UTndlRHRqYjJ4dmNqb2pPR0V6WWpFeU8ySmhZMnRuY205MWJtUTZJMFpHUmpORk5EdGliM0prWlhJNk1YQjRJSE52Ykdsa0lDTkdNMFE1UVVNN1ltOXlaR1Z5TFhKaFpHbDFjem94TUhCNE8zQmhaR1JwYm1jNk1URndlQ0F4TTNCNE8yMWhjbWRwYmpvd0lEQWdNVEp3ZUgxY2JpNXlZM2N0Y0hBZ0xuSmpkeTF3Y0MxM1lYSnVJR0o3WTI5c2IzSTZJelprTW1Zd1pYMWNiaTV5WTNjdGNIQWdMbkpqZHkxd2NDMXRkWFJsWkh0amIyeHZjam9qT1VaQ01FSXhPMlp2Ym5RdGMybDZaVG94TWk0MWNIZzdiV0Z5WjJsdU9qRXdjSGdnTW5CNElEQjlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRabTl2ZEh0dFlYSm5hVzQ2TVRad2VDQXljSGdnTUR0bWIyNTBMWE5wZW1VNk1URXVOWEI0TzJOdmJHOXlPaU01UmtJd1FqRjlYRzR1Y21OM0xYQndJQzV5WTNjdGNIQXRjMnRsYkh0b1pXbG5hSFE2TVROd2VEdGliM0prWlhJdGNtRmthWFZ6T2prNU9YQjRPMkpoWTJ0bmNtOTFibVE2STBVNVJVVkZSVHR0WVhKbmFXNHRZbTkwZEc5dE9qbHdlSDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF6YTJWc0xYY3hlM2RwWkhSb09qVXlKWDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF6YTJWc0xYY3llM2RwWkhSb09qYzRKWDFjYmk1eVkzY3RjSEFnTG5KamR5MXdjQzF6YTJWc0xYY3plM2RwWkhSb09qTTBKWDFjYmk1eVkzY3RjSEFnVzJocFpHUmxibDE3WkdsemNHeGhlVHB1YjI1bElXbHRjRzl5ZEdGdWRIMWNia0J0WldScFlTQW9iV0Y0TFhkcFpIUm9PalV5TUhCNEtYdGNiaUFnTG5KamR5MXdjSHR3WVdSa2FXNW5PakUyY0hoOVhHNGdJQzV5WTNjdGNIQWdMbkpqZHkxd2NDMW1hV1ZzWkh0bWJHVjRPakVnTVNBeE1EQWxmVnh1SUNBdWNtTjNMWEJ3SUM1eVkzY3RjSEF0YzJWc2QzSmhjSHRtYkdWNE9qRWdNU0F4TURBbGZWeHVJQ0F1Y21OM0xYQndJQzV5WTNjdGNIQXRhRzU3Wm05dWRDMXphWHBsT2pJd2NIaDlYRzRnSUM1eVkzY3RjSEFnTG5KamR5MXdjQzFtWVdOMGN5QnNhWHRtYkdWNE9qRWdNU0JqWVd4aktEVXdKU0F0SURad2VDbDlYRzU5WEc0aU8zWmhjaUJqUFdSdlkzVnRaVzUwTG1OMWNuSmxiblJUWTNKcGNIUTdLR01tSm1NdWNHRnlaVzUwVG05a1pUOWpMbkJoY21WdWRFNXZaR1U2Wkc5amRXMWxiblF1YUdWaFpDa3VZWEJ3Wlc1a1EyaHBiR1FvY3lrN2ZTa29LVHM9IiksZnVuY3Rpb24oYyl7cmV0dXJuIGMuY2hhckNvZGVBdCgwKX0pKSk=\"),function(c){return c.charCodeAt(0)})))<\/script>\n\n<h2 class=\"rcw-pp-title\">FC 27 Player Ratings Finder<\/h2>\n<p class=\"rcw-pp-sub\">Search any player in EA SPORTS FC 27 and see their overall, position, face stats and how they rank against everyone else. Add <code>?player=name<\/code> to this page&rsquo;s address to link straight to a player.<\/p>\n\n<div class=\"rcw-pp-card\">\n  <p class=\"rcw-pp-kicker\">Find a player<\/p>\n  <div class=\"rcw-pp-searchrow\">\n    <div class=\"rcw-pp-field\">\n      <label class=\"rcw-pp-lab\" for=\"rcw-pp-q\">Player name<\/label>\n      <input class=\"rcw-pp-in\" id=\"rcw-pp-q\" type=\"text\" autocomplete=\"off\" spellcheck=\"false\" placeholder=\"Start typing a name&hellip;\">\n    <\/div>\n    <div class=\"rcw-pp-selwrap\" id=\"rcw-pp-w-pos\"><\/div>\n  <\/div>\n  <div id=\"rcw-pp-hits\" aria-live=\"polite\"><\/div>\n<\/div>\n\n<div id=\"rcw-pp-out\" aria-live=\"polite\"><\/div>\n\n<p class=\"rcw-pp-foot\">Unofficial fan tool &mdash; not affiliated with or endorsed by EA SPORTS. Ratings are EA&rsquo;s published FC 27 data, captured 2 September 2026.<\/p>\n<script>eval(new TextDecoder().decode(Uint8Array.from(atob(\"CihmdW5jdGlvbiAoKSB7CiAgJ3VzZSBzdHJpY3QnOwogIC8qID09PT09IFJDVy1DT1JFLVNUQVJUIChwdXJlIGRhdGEgbG9naWMsIG5vZGUtdGVzdGFibGUpID09PT09ICovCiAgdmFyIFJDV19TUkMgPSB7CiAgdG9wOiBbCiAgICAnaHR0cHM6Ly9jcmVhdGl2ZWdyb3VwLWJsb2ctcHJkLWV1LXdlc3QtMS1yZWNoYXJnZS1ibG9nLnMzLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDkvMDMxMjE5MjIvcmN3LWZjLXRvcC1wMS0yLnR4dCcsCiAgICAnaHR0cHM6Ly9jcmVhdGl2ZWdyb3VwLWJsb2ctcHJkLWV1LXdlc3QtMS1yZWNoYXJnZS1ibG9nLnMzLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDkvMDMxMjE5MjUvcmN3LWZjLXRvcC1wMi0yLnR4dCcKICBdLAogIHJlc3Q6IFsKICAgICdodHRwczovL2NyZWF0aXZlZ3JvdXAtYmxvZy1wcmQtZXUtd2VzdC0xLXJlY2hhcmdlLWJsb2cuczMuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vYmxvZy93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wOS8wMzEyMTkyNy9yY3ctZmMtcmVzdC1wMS0yLnR4dCcsCiAgICAnaHR0cHM6Ly9jcmVhdGl2ZWdyb3VwLWJsb2ctcHJkLWV1LXdlc3QtMS1yZWNoYXJnZS1ibG9nLnMzLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDkvMDMxMjE5MzEvcmN3LWZjLXJlc3QtcDItMi50eHQnLAogICAgJ2h0dHBzOi8vY3JlYXRpdmVncm91cC1ibG9nLXByZC1ldS13ZXN0LTEtcmVjaGFyZ2UtYmxvZy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA5LzAzMTIxOTMzL3Jjdy1mYy1yZXN0LXAzLTIudHh0JywKICAgICdodHRwczovL2NyZWF0aXZlZ3JvdXAtYmxvZy1wcmQtZXUtd2VzdC0xLXJlY2hhcmdlLWJsb2cuczMuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vYmxvZy93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wOS8wMzEyMTkzNi9yY3ctZmMtcmVzdC1wNC0yLnR4dCcsCiAgICAnaHR0cHM6Ly9jcmVhdGl2ZWdyb3VwLWJsb2ctcHJkLWV1LXdlc3QtMS1yZWNoYXJnZS1ibG9nLnMzLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDkvMDMxMjE5MzgvcmN3LWZjLXJlc3QtcDUtMi50eHQnLAogICAgJ2h0dHBzOi8vY3JlYXRpdmVncm91cC1ibG9nLXByZC1ldS13ZXN0LTEtcmVjaGFyZ2UtYmxvZy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA5LzAzMTIxOTQwL3Jjdy1mYy1yZXN0LXA2LTIudHh0JywKICAgICdodHRwczovL2NyZWF0aXZlZ3JvdXAtYmxvZy1wcmQtZXUtd2VzdC0xLXJlY2hhcmdlLWJsb2cuczMuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vYmxvZy93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wOS8wMzEyMTk0Mi9yY3ctZmMtcmVzdC1wNy0yLnR4dCcsCiAgICAnaHR0cHM6Ly9jcmVhdGl2ZWdyb3VwLWJsb2ctcHJkLWV1LXdlc3QtMS1yZWNoYXJnZS1ibG9nLnMzLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjYvMDkvMDMxMjE5NDUvcmN3LWZjLXJlc3QtcDgtMi50eHQnLAogICAgJ2h0dHBzOi8vY3JlYXRpdmVncm91cC1ibG9nLXByZC1ldS13ZXN0LTEtcmVjaGFyZ2UtYmxvZy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA5LzAzMTIxOTQ3L3Jjdy1mYy1yZXN0LXA5LTIudHh0JywKICAgICdodHRwczovL2NyZWF0aXZlZ3JvdXAtYmxvZy1wcmQtZXUtd2VzdC0xLXJlY2hhcmdlLWJsb2cuczMuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vYmxvZy93cC1jb250ZW50L3VwbG9hZHMvMjAyNi8wOS8wMzEyMTk0OS9yY3ctZmMtcmVzdC1wMTAtMS50eHQnLAogICAgJ2h0dHBzOi8vY3JlYXRpdmVncm91cC1ibG9nLXByZC1ldS13ZXN0LTEtcmVjaGFyZ2UtYmxvZy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA5LzAzMTIxOTUyL3Jjdy1mYy1yZXN0LXAxMS0xLnR4dCcKICBdLAogIG1vdmVyczogJ2h0dHBzOi8vY3JlYXRpdmVncm91cC1ibG9nLXByZC1ldS13ZXN0LTEtcmVjaGFyZ2UtYmxvZy5zMy5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA5LzAzMTIyMDEyL3Jjdy1mYy1tb3ZlcnMtMi50eHQnCn07CiAgZnVuY3Rpb24gcmN3RmV0Y2hKc29uKHVybCl7CiAgICByZXR1cm4gZmV0Y2godXJsKS50aGVuKGZ1bmN0aW9uKHIpewogICAgICBpZiAoIXIub2spIHRocm93IG5ldyBFcnJvcignSFRUUCAnICsgci5zdGF0dXMpOwogICAgICByZXR1cm4gci50ZXh0KCk7CiAgICB9KS50aGVuKGZ1bmN0aW9uKHQpeyByZXR1cm4gSlNPTi5wYXJzZSh0LnNsaWNlKHQuaW5kZXhPZignXG4nKSArIDEpKTsgfSk7CiAgfQogIGZ1bmN0aW9uIHJjd0xvYWRTZXQodXJscyl7CiAgICByZXR1cm4gUHJvbWlzZS5hbGwodXJscy5tYXAocmN3RmV0Y2hKc29uKSkudGhlbihmdW5jdGlvbihwYXJ0cyl7CiAgICAgIHZhciBvdXQgPSBwYXJ0c1swXTsKICAgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBwYXJ0cy5sZW5ndGg7IGkrKyl7CiAgICAgICAgb3V0LnBsYXllcnMgPSBvdXQucGxheWVycy5jb25jYXQocGFydHNbaV0ucGxheWVycyk7CiAgICAgICAgT2JqZWN0LmFzc2lnbihvdXQuY2x1YnMsIHBhcnRzW2ldLmNsdWJzKTsKICAgICAgICBPYmplY3QuYXNzaWduKG91dC5uYXRpb25zLCBwYXJ0c1tpXS5uYXRpb25zKTsKICAgICAgfQogICAgICByZXR1cm4gb3V0OwogICAgfSk7CiAgfQogIGZ1bmN0aW9uIGVzYyhzKXsgcmV0dXJuIFN0cmluZyhzID09IG51bGwgPyAnJyA6IHMpLnJlcGxhY2UoL1smPD4iJ10vZywgZnVuY3Rpb24oYyl7CiAgICByZXR1cm4geycmJzonJmFtcDsnLCc8JzonJmx0OycsJz4nOicmZ3Q7JywnIic6JyZxdW90OycsIiciOicmIzM5Oyd9W2NdOyB9KTsgfQogIGZ1bmN0aW9uIGZtdChuKXsgcmV0dXJuIFN0cmluZyhuKS5yZXBsYWNlKC9cQig\/PShcZHszfSkrKD8hXGQpKS9nLCAnLCcpOyB9CgogIC8qIHNsdWc6IGxvd2VyY2FzZSwgc3RyaXAgZGlhY3JpdGljcywgbm9uLWFscGhhbnVtZXJpY3MgLT4gc2luZ2xlIGh5cGhlbiAqLwogIGZ1bmN0aW9uIHNsdWdpZnkocyl7CiAgICBzID0gU3RyaW5nKHMgPT0gbnVsbCA\/ICcnIDogcykudG9Mb3dlckNhc2UoKTsKICAgIGlmIChzLm5vcm1hbGl6ZSkgeyBzID0gcy5ub3JtYWxpemUoJ05GRCcpLnJlcGxhY2UoL1vMgC3Nr10vZywgJycpOyB9CiAgICBzID0gcy5yZXBsYWNlKC\/DuC9nLCAnbycpLnJlcGxhY2UoL8SRL2csICdkJykucmVwbGFjZSgvw6YvZywgJ2FlJyk7CiAgICBzID0gcy5yZXBsYWNlKC\/Fgi9nLCAnbCcpLnJlcGxhY2UoL8OfL2csICdzcycpLnJlcGxhY2UoL8O+L2csICd0aCcpOwogICAgcmV0dXJuIHMucmVwbGFjZSgvW15hLXowLTldKy9nLCAnLScpLnJlcGxhY2UoL14tKy8sICcnKS5yZXBsYWNlKC8tKyQvLCAnJyk7CiAgfQogIC8qIGxvb3NlIGZvcm0gZm9yIHRoZSBzZWFyY2ggYm94OiBubyBoeXBoZW5zLCBubyBwdW5jdHVhdGlvbiAqLwogIGZ1bmN0aW9uIG5vcm1OYW1lKHMpeyByZXR1cm4gc2x1Z2lmeShzKS5yZXBsYWNlKC8tL2csICcgJykudHJpbSgpOyB9CgogIHZhciBTVEFUX09VVCA9IFsnUGFjZScsICdTaG9vdGluZycsICdQYXNzaW5nJywgJ0RyaWJibGluZycsICdEZWZlbmRpbmcnLCAnUGh5c2ljYWwnXTsKICB2YXIgU1RBVF9HSyAgPSBbJ0RpdmluZycsICdIYW5kbGluZycsICdLaWNraW5nJywgJ1JlZmxleGVzJywgJ1NwZWVkJywgJ1Bvc2l0aW9uaW5nJ107CiAgZnVuY3Rpb24gc3RhdExhYmVscyhwb3MpeyByZXR1cm4gcG9zID09PSAnR0snID8gU1RBVF9HSyA6IFNUQVRfT1VUOyB9CgogIGZ1bmN0aW9uIGZpbGxDbGFzcyh2KXsKICAgIGlmICh2ID49IDc1KSByZXR1cm4gJ3Jjdy1wcC1maWxsJzsKICAgIGlmICh2ID49IDYwKSByZXR1cm4gJ3Jjdy1wcC1maWxsIHJjdy1wcC1maWxsLW1pZCc7CiAgICByZXR1cm4gJ3Jjdy1wcC1maWxsIHJjdy1wcC1maWxsLWxvdyc7CiAgfQogIC8qID09PT09IFJDVy1DT1JFLUVORCA9PT09PSAqLwoKICB2YXIgcm9vdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyY3ctcHAnKTsKICBpZiAoIXJvb3QpIHJldHVybjsKICB2YXIgcUlucHV0ICA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyY3ctcHAtcScpOwogIHZhciBoaXRzRWwgID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jjdy1wcC1oaXRzJyk7CiAgdmFyIG91dEVsICAgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmN3LXBwLW91dCcpOwogIHZhciBwb3NXcmFwID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jjdy1wcC13LXBvcycpOwoKICB2YXIgcGxheWVycyA9IFtdOwogIHZhciBieUlkID0ge307CiAgdmFyIGNsdWJzID0ge307CiAgdmFyIG5hdGlvbnMgPSB7fTsKICB2YXIgbW92ZXJzID0gbnVsbDsKICB2YXIgbW92ZXJCeUlkID0ge307CiAgdmFyIHJlc3RMb2FkZWQgPSBmYWxzZTsKICB2YXIgcmVzdExvYWRpbmcgPSBmYWxzZTsKICB2YXIgdG9wTG9hZGVkID0gZmFsc2U7CiAgdmFyIGN1cnJlbnQgPSBudWxsOwogIHZhciBwZW5kaW5nU2x1ZyA9ICcnOwogIHZhciBwb3NGaWx0ZXIgPSAnJzsKICB2YXIgZGViID0gbnVsbDsKICB2YXIgc2VsUG9zID0gbnVsbDsKCiAgdmFyIEJBU0VfVElUTEUgPSBkb2N1bWVudC50aXRsZTsKCiAgLyogLS0tLS0tLS0tLSBkcm9wZG93biBidWlsdCBlbnRpcmVseSBpbiBKUyAoV29yZFByZXNzIHN0cmlwcyByYXcgbWFya3VwKSAtLS0tLS0tLS0tICovCiAgZnVuY3Rpb24gbWFrZVNlbGVjdCh3cmFwLCBpZCwgbGFiZWwsIG9wdHMpewogICAgaWYgKCF3cmFwKSByZXR1cm4gbnVsbDsKICAgIHZhciBzZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzZWxlY3QnKTsKICAgIHNlbC5jbGFzc05hbWUgPSAncmN3LXBwLXNlbCc7CiAgICBzZWwuaWQgPSBpZDsKICAgIHNlbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCBsYWJlbCk7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IG9wdHMubGVuZ3RoOyBpKyspewogICAgICB2YXIgbyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ29wdGlvbicpOwogICAgICBvLnZhbHVlID0gb3B0c1tpXVswXTsKICAgICAgby50ZXh0Q29udGVudCA9IG9wdHNbaV1bMV07CiAgICAgIHNlbC5hcHBlbmRDaGlsZChvKTsKICAgIH0KICAgIHZhciBsYWIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7CiAgICBsYWIuY2xhc3NOYW1lID0gJ3Jjdy1wcC1sYWInOwogICAgbGFiLnRleHRDb250ZW50ID0gbGFiZWw7CiAgICB3cmFwLmFwcGVuZENoaWxkKGxhYik7CiAgICB3cmFwLmFwcGVuZENoaWxkKHNlbCk7CiAgICByZXR1cm4gc2VsOwogIH0KCiAgZnVuY3Rpb24gYnVpbGRQb3NTZWxlY3QoKXsKICAgIHNlbFBvcyA9IG1ha2VTZWxlY3QocG9zV3JhcCwgJ3Jjdy1wcC1wb3MnLCAnUG9zaXRpb24nLCBbCiAgICAgIFsnJywgJ0FsbCBwb3NpdGlvbnMnXSwKICAgICAgWydHSycsICdHb2Fsa2VlcGVycyddLAogICAgICBbJ0RFRicsICdEZWZlbmRlcnMnXSwKICAgICAgWydNSUQnLCAnTWlkZmllbGRlcnMnXSwKICAgICAgWydBVFQnLCAnQXR0YWNrZXJzJ10KICAgIF0pOwogICAgaWYgKCFzZWxQb3MpIHJldHVybjsKICAgIHNlbFBvcy5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBmdW5jdGlvbigpewogICAgICBwb3NGaWx0ZXIgPSBzZWxQb3MudmFsdWU7CiAgICAgIHJ1blNlYXJjaCgpOwogICAgfSk7CiAgfQoKICB2YXIgR1JPVVBTID0gewogICAgR0s6ICBbJ0dLJ10sCiAgICBERUY6IFsnQ0InLCAnTEInLCAnUkInLCAnTFdCJywgJ1JXQiddLAogICAgTUlEOiBbJ0NETScsICdDTScsICdDQU0nLCAnTE0nLCAnUk0nXSwKICAgIEFUVDogWydTVCcsICdDRicsICdMVycsICdSVyddCiAgfTsKICBmdW5jdGlvbiBpbkdyb3VwKHBvcywgZ3JwKXsKICAgIGlmICghZ3JwKSByZXR1cm4gdHJ1ZTsKICAgIHZhciBsaXN0ID0gR1JPVVBTW2dycF07CiAgICBpZiAoIWxpc3QpIHJldHVybiB0cnVlOwogICAgcmV0dXJuIGxpc3QuaW5kZXhPZihwb3MpICE9PSAtMTsKICB9CgogIC8qIC0tLS0tLS0tLS0gbG9va3VwcyAtLS0tLS0tLS0tICovCiAgZnVuY3Rpb24gY2x1Yk5hbWUocCl7CiAgICB2YXIgYyA9IGNsdWJzW1N0cmluZyhwLmMpXTsKICAgIGlmICghYykgcmV0dXJuICcnOwogICAgcmV0dXJuIGMubGFiZWwgPyBjLmxhYmVsIDogJyc7CiAgfQogIGZ1bmN0aW9uIG5hdGlvbk5hbWUocCl7CiAgICB2YXIgbiA9IG5hdGlvbnNbU3RyaW5nKHAubnQpXTsKICAgIGlmICghbikgcmV0dXJuICcnOwogICAgcmV0dXJuIG4ubGFiZWwgPyBuLmxhYmVsIDogJyc7CiAgfQoKICBmdW5jdGlvbiBpbmRleFBsYXllcnMobGlzdCl7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxpc3QubGVuZ3RoOyBpKyspewogICAgICB2YXIgcCA9IGxpc3RbaV07CiAgICAgIGlmIChwLl9fcyA9PSBudWxsKSBwLl9fcyA9IHNsdWdpZnkocC5uKTsKICAgICAgaWYgKHAuX19xID09IG51bGwpIHAuX19xID0gbm9ybU5hbWUocC5uKTsKICAgICAgYnlJZFtTdHJpbmcocC5pZCldID0gcDsKICAgIH0KICB9CgogIGZ1bmN0aW9uIGZpbmRCeVNsdWcoc2x1Zyl7CiAgICB2YXIgb3V0ID0gW107CiAgICBpZiAoIXNsdWcpIHJldHVybiBvdXQ7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBsYXllcnMubGVuZ3RoOyBpKyspewogICAgICBpZiAocGxheWVyc1tpXS5fX3MgPT09IHNsdWcpIG91dC5wdXNoKHBsYXllcnNbaV0pOwogICAgfQogICAgcmV0dXJuIG91dDsKICB9CgogIC8qIC0tLS0tLS0tLS0gbW92ZXJzIC0tLS0tLS0tLS0gKi8KICBmdW5jdGlvbiBpbmRleE1vdmVycyhtdil7CiAgICBpZiAoIW12KSByZXR1cm47CiAgICB2YXIgYnVja2V0cyA9IFsndXAnLCAnZG93bicsICduZXcnXTsKICAgIGZvciAodmFyIGIgPSAwOyBiIDwgYnVja2V0cy5sZW5ndGg7IGIrKyl7CiAgICAgIHZhciBhcnIgPSBtdltidWNrZXRzW2JdXTsKICAgICAgaWYgKCFhcnIpIGNvbnRpbnVlOwogICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKyl7CiAgICAgICAgdmFyIG0gPSBhcnJbaV07CiAgICAgICAgbW92ZXJCeUlkW1N0cmluZyhtLmlkKV0gPSB7IG06IG0sIGtpbmQ6IGJ1Y2tldHNbYl0gfTsKICAgICAgfQogICAgfQogIH0KCiAgZnVuY3Rpb24gbW92ZXJCbG9jayhwKXsKICAgIHZhciBoaXQgPSBtb3ZlckJ5SWRbU3RyaW5nKHAuaWQpXTsKICAgIGlmICghaGl0KSByZXR1cm4gJyc7CiAgICB2YXIgbSA9IGhpdC5tOwogICAgaWYgKGhpdC5raW5kID09PSAnbmV3Jyl7CiAgICAgIHJldHVybiAnPGRpdiBjbGFzcz0icmN3LXBwLW1vdmUgcmN3LXBwLW1vdmUtbmV3Ij48c3BhbiBjbGFzcz0icmN3LXBwLWRlbHRhIj5ORVc8L3NwYW4+JyArCiAgICAgICAgJzxzcGFuPk5ldyBpbiBGQyAyNyAmbWRhc2g7IG5vIEZDIDI2IHJhdGluZyB0byBjb21wYXJlIGFnYWluc3QuIEVudGVycyBhdCA8Yj4nICsKICAgICAgICBlc2MobS50bykgKyAnPC9iPiBvdmVyYWxsLjwvc3Bhbj48L2Rpdj4nOwogICAgfQogICAgaWYgKG0uZCA9PSBudWxsKSByZXR1cm4gJyc7CiAgICBpZiAobS5mcm9tID09IG51bGwpIHJldHVybiAnJzsKICAgIHZhciB1cCA9IG0uZCA+IDA7CiAgICB2YXIgY2xzID0gdXAgPyAncmN3LXBwLW1vdmUtdXAnIDogJ3Jjdy1wcC1tb3ZlLWRvd24nOwogICAgdmFyIHNpZ24gPSB1cCA\/ICcrJyA6ICcnOwogICAgdmFyIHdvcmQgPSB1cCA\/ICd1cCcgOiAnZG93bic7CiAgICByZXR1cm4gJzxkaXYgY2xhc3M9InJjdy1wcC1tb3ZlICcgKyBjbHMgKyAnIj48c3BhbiBjbGFzcz0icmN3LXBwLWRlbHRhIj4nICsgc2lnbiArIGVzYyhtLmQpICsKICAgICAgJzwvc3Bhbj48c3Bhbj5SYXRpbmcgPGI+JyArIHdvcmQgKyAnICcgKyBNYXRoLmFicyhtLmQpICsgJzwvYj4gdmVyc3VzIEZDIDI2ICZtZGFzaDsgZnJvbSAnICsKICAgICAgZXNjKG0uZnJvbSkgKyAnIHRvIDxiPicgKyBlc2MobS50bykgKyAnPC9iPiBvdmVyYWxsLjwvc3Bhbj48L2Rpdj4nOwogIH0KCiAgLyogLS0tLS0tLS0tLSByYXRpbmcgY29udGV4dCAtLS0tLS0tLS0tICovCiAgZnVuY3Rpb24gcmF0aW5nQ29udGV4dChwKXsKICAgIHZhciBzYW1lID0gMDsKICAgIHZhciBiZXR0ZXIgPSAwOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwbGF5ZXJzLmxlbmd0aDsgaSsrKXsKICAgICAgdmFyIG8gPSBwbGF5ZXJzW2ldLm87CiAgICAgIGlmIChvID09PSBwLm8pIHNhbWUrKzsKICAgICAgaWYgKG8gPiBwLm8pIGJldHRlcisrOwogICAgfQogICAgdmFyIHNjb3BlID0gcmVzdExvYWRlZCA\/ICdhbGwgJyArIGZtdChwbGF5ZXJzLmxlbmd0aCkgKyAnIHBsYXllcnMgaW4gdGhlIGRhdGFiYXNlJwogICAgICAgICAgICAgICAgICAgICAgICAgICA6ICd0aGUgdG9wICcgKyBmbXQocGxheWVycy5sZW5ndGgpICsgJyBwbGF5ZXJzIGxvYWRlZCBzbyBmYXInOwogICAgdmFyIGh0bWwgPSAnPGRpdiBjbGFzcz0icmN3LXBwLWN0eCI+JzsKICAgIGh0bWwgKz0gJzxwPlJhbmtlZCA8Yj4jJyArIGZtdChwLnIpICsgJzwvYj4gaW4gRUEmcnNxdW87cyBGQyAyNyBkYXRhc2V0LjwvcD4nOwogICAgaWYgKHNhbWUgPiAxKXsKICAgICAgaHRtbCArPSAnPHA+PGI+JyArIGZtdChzYW1lIC0gMSkgKyAnPC9iPiBvdGhlciBwbGF5ZXInICsgKHNhbWUgLSAxID09PSAxID8gJycgOiAncycpICsKICAgICAgICAnIHNoYXJlIHRoZSBzYW1lICcgKyBlc2MocC5vKSArICcgb3ZlcmFsbC48L3A+JzsKICAgIH0KICAgIGlmIChzYW1lID09PSAxKXsKICAgICAgaHRtbCArPSAnPHA+Tm8gb3RoZXIgcGxheWVyIGluIHRoaXMgc2V0IGhhcyBleGFjdGx5ICcgKyBlc2MocC5vKSArICcgb3ZlcmFsbC48L3A+JzsKICAgIH0KICAgIGh0bWwgKz0gJzxwPjxiPicgKyBmbXQoYmV0dGVyKSArICc8L2I+IHJhdGVkIGhpZ2hlciBhY3Jvc3MgJyArIHNjb3BlICsgJy48L3A+JzsKICAgIGh0bWwgKz0gJzwvZGl2Pic7CiAgICByZXR1cm4gaHRtbDsKICB9CgogIC8qIC0tLS0tLS0tLS0gc2ltaWxhciBwbGF5ZXJzIC0tLS0tLS0tLS0gKi8KICBmdW5jdGlvbiBzaW1pbGFyKHApewogICAgdmFyIHBvb2wgPSBbXTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcGxheWVycy5sZW5ndGg7IGkrKyl7CiAgICAgIHZhciBxID0gcGxheWVyc1tpXTsKICAgICAgaWYgKHEuaWQgPT09IHAuaWQpIGNvbnRpbnVlOwogICAgICBpZiAocS5wICE9PSBwLnApIGNvbnRpbnVlOwogICAgICBwb29sLnB1c2gocSk7CiAgICB9CiAgICBwb29sLnNvcnQoZnVuY3Rpb24oYSwgYil7CiAgICAgIHZhciBkYSA9IE1hdGguYWJzKGEubyAtIHAubyk7CiAgICAgIHZhciBkYiA9IE1hdGguYWJzKGIubyAtIHAubyk7CiAgICAgIGlmIChkYSAhPT0gZGIpIHJldHVybiBkYSAtIGRiOwogICAgICByZXR1cm4gYi5vIC0gYS5vOwogICAgfSk7CiAgICByZXR1cm4gcG9vbC5zbGljZSgwLCA2KTsKICB9CgogIC8qIC0tLS0tLS0tLS0gcmVuZGVyIC0tLS0tLS0tLS0gKi8KICBmdW5jdGlvbiBzdGF0c0Jsb2NrKHApewogICAgdmFyIGxhYmVscyA9IHN0YXRMYWJlbHMocC5wKTsKICAgIHZhciBzdCA9IHAuc3QgPyBwLnN0IDogW107CiAgICB2YXIgaHRtbCA9ICc8cCBjbGFzcz0icmN3LXBwLWg0Ij4nICsgKHAucCA9PT0gJ0dLJyA\/ICdHb2Fsa2VlcGluZyBzdGF0cycgOiAnRmFjZSBzdGF0cycpICsgJzwvcD4nOwogICAgaHRtbCArPSAnPHVsIGNsYXNzPSJyY3ctcHAtc3RhdHMiPic7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGxhYmVscy5sZW5ndGg7IGkrKyl7CiAgICAgIHZhciB2ID0gc3RbaV0gPT0gbnVsbCA\/IDAgOiBzdFtpXTsKICAgICAgdmFyIHcgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxMDAsIHYpKTsKICAgICAgaHRtbCArPSAnPGxpIGNsYXNzPSJyY3ctcHAtc3RhdCI+PGRpdiBjbGFzcz0icmN3LXBwLXNyb3ciPicgKwogICAgICAgICc8c3BhbiBjbGFzcz0icmN3LXBwLXNuIj4nICsgZXNjKGxhYmVsc1tpXSkgKyAnPC9zcGFuPicgKwogICAgICAgICc8c3BhbiBjbGFzcz0icmN3LXBwLXN2Ij4nICsgZXNjKHYpICsgJzwvc3Bhbj48L2Rpdj4nICsKICAgICAgICAnPGRpdiBjbGFzcz0icmN3LXBwLWJhciI+PHNwYW4gY2xhc3M9IicgKyBmaWxsQ2xhc3ModikgKyAnIiBzdHlsZT0id2lkdGg6JyArIHcgKyAnJSI+PC9zcGFuPjwvZGl2PjwvbGk+JzsKICAgIH0KICAgIGh0bWwgKz0gJzwvdWw+JzsKICAgIHJldHVybiBodG1sOwogIH0KCiAgZnVuY3Rpb24gZmFjdHNCbG9jayhwKXsKICAgIHZhciBodG1sID0gJzx1bCBjbGFzcz0icmN3LXBwLWZhY3RzIj4nOwogICAgdmFyIGNsdWIgPSBjbHViTmFtZShwKTsKICAgIHZhciBuYXQgPSBuYXRpb25OYW1lKHApOwogICAgaWYgKGNsdWIpIGh0bWwgKz0gJzxsaT48c3BhbiBjbGFzcz0icmN3LXBwLWZrIj5DbHViPC9zcGFuPjxzcGFuIGNsYXNzPSJyY3ctcHAtZnYiPicgKyBlc2MoY2x1YikgKyAnPC9zcGFuPjwvbGk+JzsKICAgIGlmIChwLmxnKSBodG1sICs9ICc8bGk+PHNwYW4gY2xhc3M9InJjdy1wcC1mayI+TGVhZ3VlPC9zcGFuPjxzcGFuIGNsYXNzPSJyY3ctcHAtZnYiPicgKyBlc2MocC5sZykgKyAnPC9zcGFuPjwvbGk+JzsKICAgIGlmIChuYXQpIGh0bWwgKz0gJzxsaT48c3BhbiBjbGFzcz0icmN3LXBwLWZrIj5OYXRpb248L3NwYW4+PHNwYW4gY2xhc3M9InJjdy1wcC1mdiI+JyArIGVzYyhuYXQpICsgJzwvc3Bhbj48L2xpPic7CiAgICBodG1sICs9ICc8bGk+PHNwYW4gY2xhc3M9InJjdy1wcC1mayI+QWdlPC9zcGFuPjxzcGFuIGNsYXNzPSJyY3ctcHAtZnYiPicgKyBlc2MocC5hKSArICc8L3NwYW4+PC9saT4nOwogICAgaHRtbCArPSAnPGxpPjxzcGFuIGNsYXNzPSJyY3ctcHAtZmsiPlByZWZlcnJlZCBmb290PC9zcGFuPjxzcGFuIGNsYXNzPSJyY3ctcHAtZnYiPicgKyBlc2MocC5mdCkgKyAnPC9zcGFuPjwvbGk+JzsKICAgIGh0bWwgKz0gJzxsaT48c3BhbiBjbGFzcz0icmN3LXBwLWZrIj5Ta2lsbCBtb3Zlczwvc3Bhbj48c3BhbiBjbGFzcz0icmN3LXBwLWZ2Ij4nICsgZXNjKHAuc20pICsgJyYjOTczMzs8L3NwYW4+PC9saT4nOwogICAgaHRtbCArPSAnPGxpPjxzcGFuIGNsYXNzPSJyY3ctcHAtZmsiPldlYWsgZm9vdDwvc3Bhbj48c3BhbiBjbGFzcz0icmN3LXBwLWZ2Ij4nICsgZXNjKHAud2YpICsgJyYjOTczMzs8L3NwYW4+PC9saT4nOwogICAgaHRtbCArPSAnPC91bD4nOwogICAgcmV0dXJuIGh0bWw7CiAgfQoKICBmdW5jdGlvbiBjaGlwc0Jsb2NrKHApewogICAgdmFyIHNpbSA9IHNpbWlsYXIocCk7CiAgICBpZiAoIXNpbS5sZW5ndGgpIHJldHVybiAnJzsKICAgIHZhciBodG1sID0gJzxkaXYgY2xhc3M9InJjdy1wcC1jYXJkIj48cCBjbGFzcz0icmN3LXBwLWtpY2tlciI+U2ltaWxhciAnICsgZXNjKHAucCkgKyAnczwvcD48dWwgY2xhc3M9InJjdy1wcC1jaGlwcyI+JzsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgc2ltLmxlbmd0aDsgaSsrKXsKICAgICAgdmFyIHMgPSBzaW1baV07CiAgICAgIGh0bWwgKz0gJzxsaT48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InJjdy1wcC1jaGlwIiBkYXRhLXBpZD0iJyArIGVzYyhzLmlkKSArICciPicgKwogICAgICAgICc8c3BhbiBjbGFzcz0icmN3LXBwLWNoaXAtbyI+JyArIGVzYyhzLm8pICsgJzwvc3Bhbj4nICsKICAgICAgICAnPHNwYW4gY2xhc3M9InJjdy1wcC1jaGlwLW4iPicgKyBlc2Mocy5uKSArICc8L3NwYW4+JyArCiAgICAgICAgJzxzcGFuIGNsYXNzPSJyY3ctcHAtY2hpcC1wIj4nICsgZXNjKHMucCkgKyAnPC9zcGFuPjwvYnV0dG9uPjwvbGk+JzsKICAgIH0KICAgIGh0bWwgKz0gJzwvdWw+PC9kaXY+JzsKICAgIHJldHVybiBodG1sOwogIH0KCiAgZnVuY3Rpb24gcmVuZGVyUGxheWVyKHApewogICAgaWYgKCFwKSByZXR1cm47CiAgICBpZiAoIW91dEVsKSByZXR1cm47CiAgICBjdXJyZW50ID0gcDsKICAgIHZhciBhbHRzID0gJyc7CiAgICBpZiAocC5hcCkgewogICAgICBpZiAocC5hcC5sZW5ndGgpIGFsdHMgPSBwLmFwLmpvaW4oJyAvICcpOwogICAgfQogICAgdmFyIGNsdWIgPSBjbHViTmFtZShwKTsKICAgIHZhciBuYXQgPSBuYXRpb25OYW1lKHApOwoKICAgIHZhciBodG1sID0gJzxkaXYgY2xhc3M9InJjdy1wcC1oZXJvIj48ZGl2IGNsYXNzPSJyY3ctcHAtaGhlYWQiPic7CiAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJyY3ctcHAtb3ZyIj48Yj4nICsgZXNjKHAubykgKyAnPC9iPjxzcGFuPk92ZXJhbGw8L3NwYW4+PC9kaXY+JzsKICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9InJjdy1wcC1obmFtZSI+PGgzIGNsYXNzPSJyY3ctcHAtaG4iPicgKyBlc2MocC5uKSArICc8L2gzPic7CiAgICB2YXIgbWV0YSA9IFtdOwogICAgaWYgKGNsdWIpIG1ldGEucHVzaChjbHViKTsKICAgIGlmIChuYXQpIG1ldGEucHVzaChuYXQpOwogICAgaWYgKG1ldGEubGVuZ3RoKSBodG1sICs9ICc8cCBjbGFzcz0icmN3LXBwLWhtIj4nICsgZXNjKG1ldGEuam9pbignICZtaWRkb3Q7ICcpKS5yZXBsYWNlKC8mYW1wO21pZGRvdDsvZywgJyZtaWRkb3Q7JykgKyAnPC9wPic7CiAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJyY3ctcHAtdGFncyI+PHNwYW4gY2xhc3M9InJjdy1wcC10YWciPicgKyBlc2MocC5wKSArICc8L3NwYW4+JzsKICAgIGlmIChhbHRzKSBodG1sICs9ICc8c3BhbiBjbGFzcz0icmN3LXBwLXRhZyByY3ctcHAtdGFnLWFsdCI+QWxzbyAnICsgZXNjKGFsdHMpICsgJzwvc3Bhbj4nOwogICAgaWYgKHAuZyA9PT0gMSkgaHRtbCArPSAnPHNwYW4gY2xhc3M9InJjdy1wcC10YWcgcmN3LXBwLXRhZy1hbHQiPldvbWVuJnJzcXVvO3MgZm9vdGJhbGw8L3NwYW4+JzsKICAgIGh0bWwgKz0gJzwvZGl2PjwvZGl2PjwvZGl2Pic7CgogICAgaHRtbCArPSAnPGRpdiBjbGFzcz0icmN3LXBwLWhib2R5Ij4nOwogICAgaHRtbCArPSBmYWN0c0Jsb2NrKHApOwogICAgaHRtbCArPSBtb3ZlckJsb2NrKHApOwogICAgaHRtbCArPSBzdGF0c0Jsb2NrKHApOwogICAgaHRtbCArPSByYXRpbmdDb250ZXh0KHApOwogICAgaHRtbCArPSAnPC9kaXY+PC9kaXY+JzsKICAgIGh0bWwgKz0gY2hpcHNCbG9jayhwKTsKCiAgICBvdXRFbC5pbm5lckhUTUwgPSBodG1sOwogICAgYmluZENoaXBzKCk7CiAgICB1cGRhdGVNZXRhKHApOwogICAgc3luY1VybChwKTsKICB9CgogIGZ1bmN0aW9uIGJpbmRDaGlwcygpewogICAgaWYgKCFvdXRFbCkgcmV0dXJuOwogICAgdmFyIGJ0bnMgPSBvdXRFbC5xdWVyeVNlbGVjdG9yQWxsKCcucmN3LXBwLWNoaXAnKTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYnRucy5sZW5ndGg7IGkrKyl7CiAgICAgIGJ0bnNbaV0uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigpewogICAgICAgIHZhciBpZCA9IHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXBpZCcpOwogICAgICAgIHZhciBwID0gYnlJZFtTdHJpbmcoaWQpXTsKICAgICAgICBpZiAoIXApIHJldHVybjsKICAgICAgICByZW5kZXJQbGF5ZXIocCk7CiAgICAgICAgaWYgKHJvb3Quc2Nyb2xsSW50b1ZpZXcpIHJvb3Quc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcsIGJsb2NrOiAnc3RhcnQnIH0pOwogICAgICB9KTsKICAgIH0KICB9CgogIGZ1bmN0aW9uIHNldE1ldGFEZXNjKHRleHQpewogICAgdmFyIG0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdtZXRhW25hbWU9ImRlc2NyaXB0aW9uIl0nKTsKICAgIGlmICghbSl7CiAgICAgIG0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdtZXRhJyk7CiAgICAgIG0uc2V0QXR0cmlidXRlKCduYW1lJywgJ2Rlc2NyaXB0aW9uJyk7CiAgICAgIGlmIChkb2N1bWVudC5oZWFkKSBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKG0pOwogICAgfQogICAgbS5zZXRBdHRyaWJ1dGUoJ2NvbnRlbnQnLCB0ZXh0KTsKICB9CgogIGZ1bmN0aW9uIHVwZGF0ZU1ldGEocCl7CiAgICBpZiAoIXApewogICAgICBkb2N1bWVudC50aXRsZSA9IEJBU0VfVElUTEU7CiAgICAgIHJldHVybjsKICAgIH0KICAgIHZhciBjbHViID0gY2x1Yk5hbWUocCk7CiAgICB2YXIgdCA9IHAubiArICcg4oCUICcgKyBwLm8gKyAnICcgKyBwLnA7CiAgICBpZiAoY2x1YikgdCArPSAnLCAnICsgY2x1YjsKICAgIHQgKz0gJyB8IEZDIDI3IFJhdGluZ3MnOwogICAgZG9jdW1lbnQudGl0bGUgPSB0OwogICAgdmFyIGxhYmVscyA9IHN0YXRMYWJlbHMocC5wKTsKICAgIHZhciBiaXRzID0gW107CiAgICB2YXIgc3QgPSBwLnN0ID8gcC5zdCA6IFtdOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsYWJlbHMubGVuZ3RoOyBpKyspewogICAgICBiaXRzLnB1c2gobGFiZWxzW2ldICsgJyAnICsgKHN0W2ldID09IG51bGwgPyAnLScgOiBzdFtpXSkpOwogICAgfQogICAgdmFyIGQgPSBwLm4gKyAnIGhhcyBhbiBvdmVyYWxsIG9mICcgKyBwLm8gKyAnIGFzIGEgJyArIHAucCArICcgaW4gRUEgU1BPUlRTIEZDIDI3JzsKICAgIGlmIChjbHViKSBkICs9ICcgYXQgJyArIGNsdWI7CiAgICBkICs9ICcuICcgKyBiaXRzLmpvaW4oJywgJykgKyAnLic7CiAgICBzZXRNZXRhRGVzYyhkKTsKICB9CgogIGZ1bmN0aW9uIHN5bmNVcmwocCl7CiAgICBpZiAoIXdpbmRvdy5oaXN0b3J5KSByZXR1cm47CiAgICBpZiAoIWhpc3RvcnkucmVwbGFjZVN0YXRlKSByZXR1cm47CiAgICB0cnkgewogICAgICB2YXIgdSA9IG5ldyBVUkwod2luZG93LmxvY2F0aW9uLmhyZWYpOwogICAgICB1LnNlYXJjaFBhcmFtcy5zZXQoJ3BsYXllcicsIHAuX19zKTsKICAgICAgdS5zZWFyY2hQYXJhbXMuZGVsZXRlKCdwJyk7CiAgICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKG51bGwsICcnLCB1LnRvU3RyaW5nKCkpOwogICAgfSBjYXRjaCAoZSkgeyAvKiBvbGRlciBicm93c2VyczogbGVhdmUgdGhlIFVSTCBhbG9uZSAqLyB9CiAgfQoKICAvKiAtLS0tLS0tLS0tIHN0YXRlcyAtLS0tLS0tLS0tICovCiAgZnVuY3Rpb24gdG9wUmF0ZWQobil7CiAgICB2YXIgcG9vbCA9IHBsYXllcnMuc2xpY2UoMCwgTWF0aC5tYXgobiAqIDQsIDQwKSk7CiAgICBwb29sLnNvcnQoZnVuY3Rpb24oYSwgYil7IHJldHVybiBiLm8gLSBhLm87IH0pOwogICAgcmV0dXJuIHBvb2wuc2xpY2UoMCwgbik7CiAgfQoKICBmdW5jdGlvbiBoaXRCdXR0b24ocCl7CiAgICB2YXIgY2x1YiA9IGNsdWJOYW1lKHApOwogICAgdmFyIGJpdHMgPSBbXTsKICAgIGJpdHMucHVzaChwLnApOwogICAgaWYgKGNsdWIpIGJpdHMucHVzaChjbHViKTsKICAgIHJldHVybiAnPGxpPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icmN3LXBwLWhpdCIgZGF0YS1waWQ9IicgKyBlc2MocC5pZCkgKyAnIj4nICsKICAgICAgJzxzcGFuIGNsYXNzPSJyY3ctcHAtaGl0LW8iPicgKyBlc2MocC5vKSArICc8L3NwYW4+JyArCiAgICAgICc8c3Bhbj48c3BhbiBjbGFzcz0icmN3LXBwLWhpdC1uIj4nICsgZXNjKHAubikgKyAnPC9zcGFuPjxicj4nICsKICAgICAgJzxzcGFuIGNsYXNzPSJyY3ctcHAtaGl0LW0iPicgKyBlc2MoYml0cy5qb2luKCcgwrcgJykpICsgJzwvc3Bhbj48L3NwYW4+PC9idXR0b24+PC9saT4nOwogIH0KCiAgZnVuY3Rpb24gc2hvd0hpdHMobGlzdCwgbm90ZSl7CiAgICBpZiAoIWhpdHNFbCkgcmV0dXJuOwogICAgdmFyIGh0bWwgPSAnJzsKICAgIGlmIChub3RlKSBodG1sICs9ICc8cCBjbGFzcz0icmN3LXBwLW11dGVkIj4nICsgbm90ZSArICc8L3A+JzsKICAgIGlmIChsaXN0Lmxlbmd0aCl7CiAgICAgIGh0bWwgKz0gJzx1bCBjbGFzcz0icmN3LXBwLWhpdHMiPic7CiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbGlzdC5sZW5ndGg7IGkrKykgaHRtbCArPSBoaXRCdXR0b24obGlzdFtpXSk7CiAgICAgIGh0bWwgKz0gJzwvdWw+JzsKICAgIH0KICAgIGhpdHNFbC5pbm5lckhUTUwgPSBodG1sOwogICAgdmFyIGJ0bnMgPSBoaXRzRWwucXVlcnlTZWxlY3RvckFsbCgnLnJjdy1wcC1oaXQnKTsKICAgIGZvciAodmFyIGogPSAwOyBqIDwgYnRucy5sZW5ndGg7IGorKyl7CiAgICAgIGJ0bnNbal0uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigpewogICAgICAgIHZhciBwID0gYnlJZFtTdHJpbmcodGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGlkJykpXTsKICAgICAgICBpZiAoIXApIHJldHVybjsKICAgICAgICBpZiAocUlucHV0KSBxSW5wdXQudmFsdWUgPSAnJzsKICAgICAgICByZW5kZXJQbGF5ZXIocCk7CiAgICAgICAgc2hvd1N1Z2dlc3Rpb25zKCk7CiAgICAgIH0pOwogICAgfQogIH0KCiAgZnVuY3Rpb24gc2hvd1N1Z2dlc3Rpb25zKCl7CiAgICBpZiAoIXRvcExvYWRlZCkgcmV0dXJuOwogICAgdmFyIGxpc3QgPSBbXTsKICAgIHZhciBwb29sID0gcGxheWVycy5zbGljZSgwKTsKICAgIHBvb2wuc29ydChmdW5jdGlvbihhLCBiKXsgcmV0dXJuIGIubyAtIGEubzsgfSk7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHBvb2wubGVuZ3RoOyBpKyspewogICAgICBpZiAobGlzdC5sZW5ndGggPj0gOCkgYnJlYWs7CiAgICAgIGlmIChpbkdyb3VwKHBvb2xbaV0ucCwgcG9zRmlsdGVyKSkgbGlzdC5wdXNoKHBvb2xbaV0pOwogICAgfQogICAgdmFyIGxhYmVsID0gcG9zRmlsdGVyID8gJ0hpZ2hlc3QtcmF0ZWQgaW4gdGhpcyBwb3NpdGlvbicgOiAnSGlnaGVzdC1yYXRlZCBwbGF5ZXJzIGluIEZDIDI3JzsKICAgIHNob3dIaXRzKGxpc3QsIGxhYmVsICsgJyAmbWRhc2g7IG9yIHR5cGUgYSBuYW1lIGFib3ZlLicpOwogIH0KCiAgZnVuY3Rpb24gcnVuU2VhcmNoKCl7CiAgICBpZiAoIXRvcExvYWRlZCkgcmV0dXJuOwogICAgaWYgKCFxSW5wdXQpeyBzaG93U3VnZ2VzdGlvbnMoKTsgcmV0dXJuOyB9CiAgICB2YXIgcSA9IG5vcm1OYW1lKHFJbnB1dC52YWx1ZSk7CiAgICBpZiAoIXEpeyBzaG93U3VnZ2VzdGlvbnMoKTsgcmV0dXJuOyB9CiAgICB2YXIgc3RhcnRzID0gW107CiAgICB2YXIgY29udGFpbnMgPSBbXTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcGxheWVycy5sZW5ndGg7IGkrKyl7CiAgICAgIHZhciBwID0gcGxheWVyc1tpXTsKICAgICAgaWYgKCFpbkdyb3VwKHAucCwgcG9zRmlsdGVyKSkgY29udGludWU7CiAgICAgIHZhciBpZHggPSBwLl9fcS5pbmRleE9mKHEpOwogICAgICBpZiAoaWR4ID09PSAwKSB7IHN0YXJ0cy5wdXNoKHApOyBjb250aW51ZTsgfQogICAgICBpZiAoaWR4ID4gMCkgY29udGFpbnMucHVzaChwKTsKICAgIH0KICAgIHZhciBieU8gPSBmdW5jdGlvbihhLCBiKXsgcmV0dXJuIGIubyAtIGEubzsgfTsKICAgIHN0YXJ0cy5zb3J0KGJ5Tyk7CiAgICBjb250YWlucy5zb3J0KGJ5Tyk7CiAgICB2YXIgbGlzdCA9IHN0YXJ0cy5jb25jYXQoY29udGFpbnMpLnNsaWNlKDAsIDEwKTsKICAgIGlmICghbGlzdC5sZW5ndGgpewogICAgICB2YXIgZXh0cmEgPSByZXN0TG9hZGVkID8gJycgOiAnIFN0aWxsIGxvYWRpbmcgdGhlIGZ1bGwgZGF0YWJhc2UgJm1kYXNoOyB0cnkgYWdhaW4gaW4gYSBtb21lbnQuJzsKICAgICAgc2hvd0hpdHMoW10sICdObyBwbGF5ZXIgbWF0Y2hlcyB0aGF0IG5hbWUuJyArIGV4dHJhKTsKICAgICAgaWYgKCFyZXN0TG9hZGVkKSBsb2FkUmVzdCgpOwogICAgICByZXR1cm47CiAgICB9CiAgICBzaG93SGl0cyhsaXN0LCBmbXQoc3RhcnRzLmxlbmd0aCArIGNvbnRhaW5zLmxlbmd0aCkgKyAnIG1hdGNoJyArCiAgICAgIChzdGFydHMubGVuZ3RoICsgY29udGFpbnMubGVuZ3RoID09PSAxID8gJycgOiAnZXMnKSArICcgJm1kYXNoOyBwaWNrIG9uZS4nKTsKICB9CgogIGZ1bmN0aW9uIHNob3dEaXNhbWJpZ3VhdGlvbihsaXN0LCBzbHVnKXsKICAgIGlmICghb3V0RWwpIHJldHVybjsKICAgIHZhciBodG1sID0gJzxkaXYgY2xhc3M9InJjdy1wcC1jYXJkIj48cCBjbGFzcz0icmN3LXBwLWtpY2tlciI+U2V2ZXJhbCBwbGF5ZXJzIG1hdGNoICZsZHF1bzsnICsKICAgICAgZXNjKHNsdWcpICsgJyZyZHF1bzs8L3A+PHAgY2xhc3M9InJjdy1wcC1ub3RlIj5QaWNrIHRoZSBvbmUgeW91IG1lYW50LjwvcD48dWwgY2xhc3M9InJjdy1wcC1oaXRzIj4nOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSBodG1sICs9IGhpdEJ1dHRvbihsaXN0W2ldKTsKICAgIGh0bWwgKz0gJzwvdWw+PC9kaXY+JzsKICAgIG91dEVsLmlubmVySFRNTCA9IGh0bWw7CiAgICB2YXIgYnRucyA9IG91dEVsLnF1ZXJ5U2VsZWN0b3JBbGwoJy5yY3ctcHAtaGl0Jyk7CiAgICBmb3IgKHZhciBqID0gMDsgaiA8IGJ0bnMubGVuZ3RoOyBqKyspewogICAgICBidG5zW2pdLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oKXsKICAgICAgICB2YXIgcCA9IGJ5SWRbU3RyaW5nKHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXBpZCcpKV07CiAgICAgICAgaWYgKCFwKSByZXR1cm47CiAgICAgICAgcmVuZGVyUGxheWVyKHApOwogICAgICB9KTsKICAgIH0KICAgIGRvY3VtZW50LnRpdGxlID0gQkFTRV9USVRMRTsKICB9CgogIGZ1bmN0aW9uIHNob3dOb3RGb3VuZChzbHVnKXsKICAgIGlmICghb3V0RWwpIHJldHVybjsKICAgIHZhciBwcmV0dHkgPSBTdHJpbmcoc2x1ZykucmVwbGFjZSgvLS9nLCAnICcpOwogICAgb3V0RWwuaW5uZXJIVE1MID0gJzxkaXYgY2xhc3M9InJjdy1wcC13YXJuIj48c3Bhbj48Yj5ObyBwbGF5ZXIgZm91bmQgZm9yICZsZHF1bzsnICsKICAgICAgZXNjKHByZXR0eSkgKyAnJnJkcXVvOy48L2I+IENoZWNrIHRoZSBzcGVsbGluZywgb3Igc2VhcmNoIGJ5IG5hbWUgYWJvdmUuICcgKwogICAgICAnT25seSBwbGF5ZXJzIGluIEVBJnJzcXVvO3MgcHVibGlzaGVkIEZDIDI3IHJhdGluZ3MgYXBwZWFyIGhlcmUuPC9zcGFuPjwvZGl2Pic7CiAgICBkb2N1bWVudC50aXRsZSA9IEJBU0VfVElUTEU7CiAgICBzaG93U3VnZ2VzdGlvbnMoKTsKICB9CgogIGZ1bmN0aW9uIHNob3dMb2FkaW5nRnVsbChzbHVnKXsKICAgIGlmICghb3V0RWwpIHJldHVybjsKICAgIG91dEVsLmlubmVySFRNTCA9ICc8ZGl2IGNsYXNzPSJyY3ctcHAtY2FyZCI+PHAgY2xhc3M9InJjdy1wcC1raWNrZXIiPkxvYWRpbmc8L3A+JyArCiAgICAgICc8cCBjbGFzcz0icmN3LXBwLW5vdGUiPkxvb2tpbmcgZm9yIDxiPicgKyBlc2MoU3RyaW5nKHNsdWcpLnJlcGxhY2UoLy0vZywgJyAnKSkgKwogICAgICAnPC9iPiBpbiB0aGUgZnVsbCBkYXRhYmFzZSZoZWxsaXA7PC9wPicgKwogICAgICAnPGRpdiBjbGFzcz0icmN3LXBwLXNrZWwgcmN3LXBwLXNrZWwtdzIiPjwvZGl2PjxkaXYgY2xhc3M9InJjdy1wcC1za2VsIHJjdy1wcC1za2VsLXcxIj48L2Rpdj4nICsKICAgICAgJzxkaXYgY2xhc3M9InJjdy1wcC1za2VsIHJjdy1wcC1za2VsLXczIj48L2Rpdj48L2Rpdj4nOwogIH0KCiAgZnVuY3Rpb24gc2tlbGV0b24oKXsKICAgIGlmICghb3V0RWwpIHJldHVybjsKICAgIG91dEVsLmlubmVySFRNTCA9ICc8ZGl2IGNsYXNzPSJyY3ctcHAtY2FyZCI+JyArCiAgICAgICc8ZGl2IGNsYXNzPSJyY3ctcHAtc2tlbCByY3ctcHAtc2tlbC13MiI+PC9kaXY+PGRpdiBjbGFzcz0icmN3LXBwLXNrZWwgcmN3LXBwLXNrZWwtdzEiPjwvZGl2PicgKwogICAgICAnPGRpdiBjbGFzcz0icmN3LXBwLXNrZWwgcmN3LXBwLXNrZWwtdzMiPjwvZGl2PjwvZGl2Pic7CiAgfQoKICBmdW5jdGlvbiBzaG93RXJyb3IoKXsKICAgIGlmICghb3V0RWwpIHJldHVybjsKICAgIG91dEVsLmlubmVySFRNTCA9ICc8ZGl2IGNsYXNzPSJyY3ctcHAtd2FybiI+PHNwYW4+PGI+Q291bGQgbm90IGxvYWQgdGhlIHJhdGluZ3MgZGF0YS48L2I+ICcgKwogICAgICAnQ2hlY2sgeW91ciBjb25uZWN0aW9uIGFuZCByZWZyZXNoIHRoZSBwYWdlLjwvc3Bhbj48L2Rpdj4nOwogIH0KCiAgLyogLS0tLS0tLS0tLSBVUkwgLS0tLS0tLS0tLSAqLwogIGZ1bmN0aW9uIHBhcmFtU2x1ZygpewogICAgdHJ5IHsKICAgICAgdmFyIHUgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTsKICAgICAgdmFyIHYgPSB1LnNlYXJjaFBhcmFtcy5nZXQoJ3BsYXllcicpOwogICAgICBpZiAoIXYpIHYgPSB1LnNlYXJjaFBhcmFtcy5nZXQoJ3AnKTsKICAgICAgcmV0dXJuIHNsdWdpZnkodiA\/IHYgOiAnJyk7CiAgICB9IGNhdGNoIChlKSB7IHJldHVybiAnJzsgfQogIH0KCiAgZnVuY3Rpb24gcmVzb2x2ZShzbHVnLCBpc0ZpbmFsKXsKICAgIGlmICghc2x1Zyl7CiAgICAgIHNob3dTdWdnZXN0aW9ucygpOwogICAgICByZXR1cm47CiAgICB9CiAgICB2YXIgaGl0cyA9IGZpbmRCeVNsdWcoc2x1Zyk7CiAgICBpZiAoaGl0cy5sZW5ndGggPT09IDEpewogICAgICByZW5kZXJQbGF5ZXIoaGl0c1swXSk7CiAgICAgIHNob3dTdWdnZXN0aW9ucygpOwogICAgICByZXR1cm47CiAgICB9CiAgICBpZiAoaGl0cy5sZW5ndGggPiAxKXsKICAgICAgc2hvd0Rpc2FtYmlndWF0aW9uKGhpdHMsIHNsdWcpOwogICAgICBzaG93U3VnZ2VzdGlvbnMoKTsKICAgICAgcmV0dXJuOwogICAgfQogICAgaWYgKGlzRmluYWwpewogICAgICBzaG93Tm90Rm91bmQoc2x1Zyk7CiAgICAgIHJldHVybjsKICAgIH0KICAgIHNob3dMb2FkaW5nRnVsbChzbHVnKTsKICAgIGxvYWRSZXN0KCk7CiAgfQoKICAvKiAtLS0tLS0tLS0tIGxvYWRpbmcgLS0tLS0tLS0tLSAqLwogIGZ1bmN0aW9uIGxvYWRSZXN0KCl7CiAgICBpZiAocmVzdExvYWRlZCkgcmV0dXJuOwogICAgaWYgKHJlc3RMb2FkaW5nKSByZXR1cm47CiAgICByZXN0TG9hZGluZyA9IHRydWU7CiAgICByY3dMb2FkU2V0KFJDV19TUkMucmVzdCkudGhlbihmdW5jdGlvbihzZXQpewogICAgICBpbmRleFBsYXllcnMoc2V0LnBsYXllcnMpOwogICAgICBwbGF5ZXJzID0gcGxheWVycy5jb25jYXQoc2V0LnBsYXllcnMpOwogICAgICBPYmplY3QuYXNzaWduKGNsdWJzLCBzZXQuY2x1YnMpOwogICAgICBPYmplY3QuYXNzaWduKG5hdGlvbnMsIHNldC5uYXRpb25zKTsKICAgICAgcmVzdExvYWRpbmcgPSBmYWxzZTsKICAgICAgcmVzdExvYWRlZCA9IHRydWU7CiAgICAgIGlmIChwZW5kaW5nU2x1Zyl7CiAgICAgICAgdmFyIHMgPSBwZW5kaW5nU2x1ZzsKICAgICAgICBwZW5kaW5nU2x1ZyA9ICcnOwogICAgICAgIHJlc29sdmUocywgdHJ1ZSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIGlmICghY3VycmVudCkgcnVuU2VhcmNoKCk7CiAgICB9KS5jYXRjaChmdW5jdGlvbigpewogICAgICByZXN0TG9hZGluZyA9IGZhbHNlOwogICAgICByZXN0TG9hZGVkID0gZmFsc2U7CiAgICAgIGlmIChwZW5kaW5nU2x1Zyl7CiAgICAgICAgdmFyIHMyID0gcGVuZGluZ1NsdWc7CiAgICAgICAgcGVuZGluZ1NsdWcgPSAnJzsKICAgICAgICBzaG93Tm90Rm91bmQoczIpOwogICAgICB9CiAgICB9KTsKICB9CgogIGZ1bmN0aW9uIGJvb3QoKXsKICAgIHNrZWxldG9uKCk7CiAgICBidWlsZFBvc1NlbGVjdCgpOwogICAgcmN3RmV0Y2hKc29uKFJDV19TUkMubW92ZXJzKS50aGVuKGZ1bmN0aW9uKG12KXsKICAgICAgbW92ZXJzID0gbXY7CiAgICAgIGluZGV4TW92ZXJzKG12KTsKICAgICAgaWYgKGN1cnJlbnQpIHJlbmRlclBsYXllcihjdXJyZW50KTsKICAgIH0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk7CiAgICByY3dMb2FkU2V0KFJDV19TUkMudG9wKS50aGVuKGZ1bmN0aW9uKHNldCl7CiAgICAgIHBsYXllcnMgPSBzZXQucGxheWVyczsKICAgICAgY2x1YnMgPSBzZXQuY2x1YnMgPyBzZXQuY2x1YnMgOiB7fTsKICAgICAgbmF0aW9ucyA9IHNldC5uYXRpb25zID8gc2V0Lm5hdGlvbnMgOiB7fTsKICAgICAgaW5kZXhQbGF5ZXJzKHBsYXllcnMpOwogICAgICB0b3BMb2FkZWQgPSB0cnVlOwogICAgICB2YXIgc2x1ZyA9IHBhcmFtU2x1ZygpOwogICAgICBwZW5kaW5nU2x1ZyA9IHNsdWc7CiAgICAgIHJlc29sdmUoc2x1ZywgZmFsc2UpOwogICAgICBpZiAoIXNsdWcpIHBlbmRpbmdTbHVnID0gJyc7CiAgICB9KS5jYXRjaChmdW5jdGlvbigpewogICAgICBzaG93RXJyb3IoKTsKICAgIH0pOwogIH0KCiAgLyogLS0tLS0tLS0tLSBldmVudHMgLS0tLS0tLS0tLSAqLwogIGlmIChxSW5wdXQpewogICAgcUlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgZnVuY3Rpb24oKXsKICAgICAgaWYgKGRlYikgY2xlYXJUaW1lb3V0KGRlYik7CiAgICAgIGRlYiA9IHNldFRpbWVvdXQocnVuU2VhcmNoLCAxNDApOwogICAgICBpZiAocmVzdExvYWRlZCkgcmV0dXJuOwogICAgICBpZiAocUlucHV0LnZhbHVlLmxlbmd0aCA+IDIpIGxvYWRSZXN0KCk7CiAgICB9KTsKICB9CgogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdwb3BzdGF0ZScsIGZ1bmN0aW9uKCl7CiAgICBpZiAoIXRvcExvYWRlZCkgcmV0dXJuOwogICAgdmFyIHMgPSBwYXJhbVNsdWcoKTsKICAgIHBlbmRpbmdTbHVnID0gczsKICAgIHJlc29sdmUocywgcmVzdExvYWRlZCk7CiAgICBpZiAoIXMpIHBlbmRpbmdTbHVnID0gJyc7CiAgfSk7CgogIGJvb3QoKTsKfSkoKTsK\"),function(c){return c.charCodeAt(0)})))<\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-you-get\">What you get for every player<\/h2>\n\n\n\n<p>The card above pulls straight from EA\u2019s published ratings. For each player:<\/p>\n\n\n\n<div style=\"overflow-x:auto\"><table style=\"width:100%;border-collapse:collapse;min-width:520px;font-size:.96em\"><thead><tr><th style=\"text-align:left;padding:10px 12px;border-bottom:2px solid #111\">Field<\/th><th style=\"text-align:left;padding:10px 12px;border-bottom:2px solid #111\">What it tells you<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Overall rating<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">EA\u2019s headline number, plus where that ranks across the whole game<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Position<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Primary position, with alternate positions where EA lists them<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">The six face stats<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Pace, shooting, passing, dribbling, defending and physical<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Goalkeeper stats<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">For keepers these six slots mean diving, handling, kicking, reflexes, speed and positioning \u2014 labelled correctly<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Skill moves \/ weak foot<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Both out of five<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Club, league, nation, age<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Plus preferred foot<\/td><\/tr><tr><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Change vs FC 26<\/td><td style=\"padding:9px 12px;border-bottom:1px solid #e6e6e6\">Shown when the player is among the biggest risers or fallers<\/td><\/tr><\/tbody><\/table><\/div>\n\n\n\n<p><strong>What we deliberately do not show:<\/strong> PlayStyles and height. EA has not populated those fields in the public ratings data \u2014 they exist for a handful of players out of more than twenty thousand \u2014 so showing them would mean guessing. We would rather leave a gap than invent one. The same goes for prices: FC 27 coin values are not in this dataset, so you will not find a &#8220;market value&#8221; here.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-goalkeepers\">Goalkeepers read differently<\/h2>\n\n\n\n<p>Worth knowing if you are comparing a keeper to an outfield player: EA stores the same six stat slots for everyone, but for goalkeepers they mean something else entirely. A keeper showing 46 in the fifth slot is not slow \u2014 that is their <em>speed<\/em> attribute, which sits alongside diving, handling, kicking, reflexes and positioning. The tool labels them correctly, which most databases do not bother to do.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-find-faster\">Find the right player faster<\/h2>\n\n\n\n<p>If you do not have a specific name in mind, the <a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-lists\">best players by position and league<\/a> page ranks every player into 88 lists \u2014 top strikers, best in each league, best from each nation, fastest, best dribblers and more. Every name there links back to this page.<\/p>\n\n\n\n<p>To compare two players side by side, use the <a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-comparison-tool\">player comparison tool<\/a>. To filter the whole database by your own criteria, the <a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-ratings-database\">full ratings database<\/a> has every filter we support.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-data-source\">Where this data comes from<\/h2>\n\n\n\n<p>EA publishes its FC 27 ratings openly, and we capture the full set rather than a curated top list. That is why women\u2019s players appear alongside men\u2019s here \u2014 the dataset covers both, and several women\u2019s players sit inside the overall top ten.<\/p>\n\n\n\n<p>The numbers refresh automatically when EA adjusts them. For the biggest movers since FC 26, see the <a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-ratings-upgrades-downgrades-tracker\">upgrades and downgrades tracker<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-fc27-data-faq\">FC 27 player data FAQ<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">How do I look up a player in FC 27?<\/h3>\n\n\n\n<p>Type the name into the search box above. All 20,689 players in EA\u2019s published FC 27 ratings are searchable, across men\u2019s and women\u2019s football, and each player has a shareable link.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What are the six stats in FC 27?<\/h3>\n\n\n\n<p>For outfield players: pace, shooting, passing, dribbling, defending and physical. For goalkeepers the same six slots mean diving, handling, kicking, reflexes, speed and positioning \u2014 which is why a keeper\u2019s numbers look strange if a database labels them as outfield stats.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Does this show PlayStyles?<\/h3>\n\n\n\n<p>No. EA has not populated PlayStyles in the public ratings data \u2014 the field exists for only a handful of players out of more than twenty thousand \u2014 so we leave it out rather than guess at it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Does it show player prices or coin values?<\/h3>\n\n\n\n<p>No. Coin prices are not part of EA\u2019s published ratings data, so we do not show a market value. Anything you see quoted as an FC 27 price elsewhere is an estimate.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Are women\u2019s players included?<\/h3>\n\n\n\n<p>Yes. EA\u2019s ratings cover both men\u2019s and women\u2019s football and so do we \u2014 several women\u2019s players sit in the overall top ten, including Alexia Putellas at 91.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How often is the data updated?<\/h3>\n\n\n\n<p>It refreshes automatically whenever EA adjusts its published ratings. The current capture is from 2 September 2026.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-more-fc27\">More FC 27 tools<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-lists\">FC 27 best players by position, league and nation<\/a><\/li><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-ratings-database\">FC 27 player ratings database<\/a><\/li><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-comparison-tool\">FC 27 player comparison tool<\/a><\/li><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-ratings-upgrades-downgrades-tracker\">FC 27 upgrades and downgrades tracker<\/a><\/li><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-wonderkids-best-young-players\">FC 27 wonderkids<\/a><\/li><li><a href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-icons\">FC 27 Icons: the Class of \u201927<\/a><\/li><\/ul>\n\n\n\n<p><em>Unofficial fan content by Recharge.com \u2014 not affiliated with or endorsed by EA SPORTS. Player data comes from EA\u2019s public FC 27 ratings database, captured 2 September 2026 and refreshed automatically. We publish the ratings EA publishes \u2014 we do not adjust them, and where EA has not published a field we leave it out rather than estimate it.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Look up any player in EA SPORTS FC 27 \u2014 all 20,689 of them. Overall rating, position, six face stats, skill moves, weak foot and how they compare to everyone else at their position.<\/p>\n","protected":false},"author":49,"featured_media":51685,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"cos_headline_score":0,"cos_seo_score":0,"cos_headline_text":"","cos_headline_has_been_analyzed":false,"cos_last_analyzed_headline":[],"_hreflang_tags":"","footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[23],"tags":[],"class_list":["post-51683","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-digital-lifestyle-old"],"jetpack_publicize_connections":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.4 (Yoast SEO v21.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>FC 27 Player Stats: Search Any of 20,689 Players<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"FC 27 Player Stats: Search Any of 20,689 Players\" \/>\n<meta property=\"og:description\" content=\"Look up any player in EA SPORTS FC 27 \u2014 all 20,689 of them. Overall rating, position, six face stats, skill moves, weak foot and how they compare to everyone else at their position.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats\" \/>\n<meta property=\"og:site_name\" content=\"Recharge Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-11T14:38:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-11T14:49:35+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/creativegroup-blog-prd-eu-west-1-recharge-blog.s3.eu-west-1.amazonaws.com\/blog\/wp-content\/uploads\/2026\/09\/11163909\/fc27-pp-stats-hero.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"1000\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Conor Byrne\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats\",\"url\":\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats\",\"name\":\"FC 27 Player Stats: Search Any of 20,689 Players\",\"isPartOf\":{\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/#website\"},\"datePublished\":\"2026-09-11T14:38:44+00:00\",\"dateModified\":\"2026-09-11T14:49:35+00:00\",\"author\":{\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/857508b94164c3cdc1f206b5c30d31a6\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.recharge.com\/blog\/en-gb\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FC 27 Player Stats: Search Any of 20,689 Players\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/#website\",\"url\":\"https:\/\/www.recharge.com\/blog\/en-gb\/\",\"name\":\"Recharge Blog\",\"description\":\"Everything about online safety, smart spending &amp; your digital lifestyle.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.recharge.com\/blog\/en-gb\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/857508b94164c3cdc1f206b5c30d31a6\",\"name\":\"Conor Byrne\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/624bd2d0a75e67e81c16920493bcda346cb5cfd0f77cfdff3a72413de0254eeb?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/624bd2d0a75e67e81c16920493bcda346cb5cfd0f77cfdff3a72413de0254eeb?s=96&d=mm&r=g\",\"caption\":\"Conor Byrne\"},\"description\":\"My passion for the e-commerce and fintech space started years ago with my first gaming console, giving me firsthand experience with the world of digital credit and top-ups. As a blog copywriter here at Recharge.com, I now get to use that insight to create clear, helpful content that makes navigating gift cards and online payments a breeze for our community.\",\"url\":\"https:\/\/www.recharge.com\/blog\/en-gb\/author\/conor-byrne\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"FC 27 Player Stats: Search Any of 20,689 Players","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats","og_locale":"en_GB","og_type":"article","og_title":"FC 27 Player Stats: Search Any of 20,689 Players","og_description":"Look up any player in EA SPORTS FC 27 \u2014 all 20,689 of them. Overall rating, position, six face stats, skill moves, weak foot and how they compare to everyone else at their position.","og_url":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats","og_site_name":"Recharge Blog","article_published_time":"2026-09-11T14:38:44+00:00","article_modified_time":"2026-09-11T14:49:35+00:00","og_image":[{"width":1500,"height":1000,"url":"https:\/\/creativegroup-blog-prd-eu-west-1-recharge-blog.s3.eu-west-1.amazonaws.com\/blog\/wp-content\/uploads\/2026\/09\/11163909\/fc27-pp-stats-hero.jpg","type":"image\/jpeg"}],"author":"Conor Byrne","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats","url":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats","name":"FC 27 Player Stats: Search Any of 20,689 Players","isPartOf":{"@id":"https:\/\/www.recharge.com\/blog\/en-gb\/#website"},"datePublished":"2026-09-11T14:38:44+00:00","dateModified":"2026-09-11T14:49:35+00:00","author":{"@id":"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/857508b94164c3cdc1f206b5c30d31a6"},"breadcrumb":{"@id":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.recharge.com\/blog\/en-gb\/fc-27-player-stats#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.recharge.com\/blog\/en-gb"},{"@type":"ListItem","position":2,"name":"FC 27 Player Stats: Search Any of 20,689 Players"}]},{"@type":"WebSite","@id":"https:\/\/www.recharge.com\/blog\/en-gb\/#website","url":"https:\/\/www.recharge.com\/blog\/en-gb\/","name":"Recharge Blog","description":"Everything about online safety, smart spending &amp; your digital lifestyle.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.recharge.com\/blog\/en-gb\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/857508b94164c3cdc1f206b5c30d31a6","name":"Conor Byrne","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.recharge.com\/blog\/en-gb\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/624bd2d0a75e67e81c16920493bcda346cb5cfd0f77cfdff3a72413de0254eeb?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/624bd2d0a75e67e81c16920493bcda346cb5cfd0f77cfdff3a72413de0254eeb?s=96&d=mm&r=g","caption":"Conor Byrne"},"description":"My passion for the e-commerce and fintech space started years ago with my first gaming console, giving me firsthand experience with the world of digital credit and top-ups. As a blog copywriter here at Recharge.com, I now get to use that insight to create clear, helpful content that makes navigating gift cards and online payments a breeze for our community.","url":"https:\/\/www.recharge.com\/blog\/en-gb\/author\/conor-byrne"}]}},"jetpack_featured_media_url":"https:\/\/creativegroup-blog-prd-eu-west-1-recharge-blog.s3.eu-west-1.amazonaws.com\/blog\/wp-content\/uploads\/2026\/09\/11163909\/fc27-pp-stats-hero.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/posts\/51683","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/users\/49"}],"replies":[{"embeddable":true,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/comments?post=51683"}],"version-history":[{"count":2,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/posts\/51683\/revisions"}],"predecessor-version":[{"id":51719,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/posts\/51683\/revisions\/51719"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/media\/51685"}],"wp:attachment":[{"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/media?parent=51683"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/categories?post=51683"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.recharge.com\/blog\/en-gb\/wp-json\/wp\/v2\/tags?post=51683"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}